Maison > Questions et réponses > le corps du texte
Excusez-moi, comment utiliser jQ pour lier un événement mousemove, et l'événement doit transmettre des paramètres et prendre en charge la dissociation ?
Si vous utilisez une fonction anonyme, vous ne pouvez pas la dissocier. Si elle n'est pas anonyme, il semble que vous ne puissiez pas transmettre de paramètres.
漂亮男人2017-05-19 10:17:05
Donnez simplement à la fonction anonyme un nom interne.
$(element).on('mousemove',{a:1},function handler(ev){
console.log(ev.data);//{a:1}
$(this).off('mousemove',handler);//“handler”变量只在函数体内有效,不会污染外部
});
曾经蜡笔没有小新2017-05-19 10:17:05
Pourquoi ne puis-je pas me délier lorsque j'écris de manière anonyme ? ? ?
$("object").bind("click",function(e){
if('達到某一條件??') {
$(this).unbind();
}
});
高洛峰2017-05-19 10:17:05
Liaison de fonctions nommées, passage de paramètres et dissociation :
function omg(event) {
console.info(event.data.foo);
}
$('#omg').on('mousemove.omg', {foo: "bar"}, omg); // 绑定及传参
$('#omg').off('.omg'); // 解绑
Liaison de fonctions anonymes, passage de paramètres et dissociation :
$('#omg').on('mousemove.omg', {foo: "bar"}, function (event) {
console.info(event.data.foo);
}); // 绑定及传参
$('#omg').off('.omg'); // 解绑