[英]jQuery .on() hover not working for HTML5 select box
我试图捕获鼠标悬停在选择框上的事件,无论它是折叠还是展开。 我以以下方式使用.on(),
$(document).on('hover', "select#selectBox", function() {
alert("done");
});
请注意,我也在DOM文档中使用此代码段。
我也尝试将事件更改为单击,滚动,鼠标悬停,mouseenter等。 似乎也不适合那些。
请指出我要去哪里了。
我做了一个JSFiddle: https ://jsfiddle.net/g9vf1mty/2/
编辑 :感谢大家的快速回复! 我已经纠正了我的错误:)
我对JSFiddle进行了一些调整。 现在,我正在尝试滚动选择框,使其尺寸小于选项的数量,并将“悬停”事件更改为“滚动”事件。 它似乎不是那样工作的。
我正在使用jQuery 2.1.3 。
此处的JSFiddle: https ://jsfiddle.net/g9vf1mty/8/
$("select#selectBox").hover(function() {
alert("working");
});
以上述方式使用悬停功能。 更重要的是,您也错过了jQuery库。
由于on("hover")
已从jQuery 1.8弃用 ,因此无法在更高版本的jquery上使用。
您无需将绑定到document
级别的事件包装在ready伪事件中。 并且因为您想委托事件,也许想处理动态元素,所以正确的方法是通过以下方式绑定mouseenter & mouseleave
事件:
最终按处理程序内的事件类型过滤(输入/输出)
$(document).on('mouseenter mouseleave', "#selectBox", function(e) {
alert("done: " + e.type);
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.