我的解开不起作用。
$("img.hoverable").hover(ChangeImage, ChangeBack);
$("a img.hoverable").unbind('hover');
HTML可能就像这样
<img class="hoverable" src="something.jpg"/>
<a href="#"><img class="hoverable" src="something.jpg"/></a>
当我将鼠标悬停在第二个HTML上时,仍会触发ChangeImage。
我不确定我是否正确使用它,有人可以提供建议吗?
答案 0 :(得分:15)
尝试
$("img.hoverable").unbind('mouseenter mouseleave');
.hover()方法为mouseenter和mouseleave事件绑定处理程序。所以为了解开绑定,你必须解开mouseenter和mouseleave。
答案 1 :(得分:5)
hover
是mouseenter
和mouseleave
的伪事件。所以你必须解开它们。
或者如果没有附加其他处理程序,请在没有参数的情况下调用.unbind()
(删除任何处理程序)。
$("a img.hoverable").unbind();
答案 2 :(得分:0)
试试这个:
$("img.hoverable").hover(ChangeImage, ChangeBack);
$("img.hoverable").unbind('hover');
答案 3 :(得分:0)
.hover是mouseenter和mouseleave的包装器。
尝试调用unbind。