Javascript jQuery.on()悬停不适用于HTML5选择框

Javascript jQuery.on()悬停不适用于HTML5选择框,javascript,jquery,html,Javascript,Jquery,Html,我试图在鼠标悬停在选择框上时捕获事件,无论是折叠还是展开。我以以下方式使用.on() $(document).on('hover', "select#selectBox", function() { alert("done"); }); 请注意,我在DOM文档ready中也使用了这个片段 我也尝试过将事件更改为单击、滚动、鼠标悬停、鼠标悬停等。 似乎对那些人也不起作用 请指出我错在哪里 我做了一个JSFIDLE: 编辑:感谢大家的快速回复! 我已经纠正了我的错误:) 我已经稍微调整

我试图在鼠标悬停在选择框上时捕获事件,无论是折叠还是展开。我以以下方式使用.on()

$(document).on('hover', "select#selectBox", function() {
    alert("done");
  });
请注意,我在DOM文档ready中也使用了这个片段

我也尝试过将事件更改为单击、滚动、鼠标悬停、鼠标悬停等。 似乎对那些人也不起作用

请指出我错在哪里

我做了一个JSFIDLE:

编辑:感谢大家的快速回复! 我已经纠正了我的错误:)

我已经稍微调整了JSFIDLE。现在,我正在尝试滚动选择框,其大小小于选项数,并已将“悬停”事件更改为“滚动”事件。它似乎不是那样工作的

我正在使用jQuery 2.1.3


JSFiddle here:

您应该使用mouseenter事件

并将jquery包括在您的小提琴中:)


再看看这个(所以问题)[

您应该使用mouseenter事件

并将jquery包括在您的小提琴中:)

再看看这个(所以问题)[

以上述方式使用hover函数。更重要的是,您也错过了jQuery库

由于JQuery1.8中的
(“hover”)
弃用,因此它在更高版本的jQuery上不起作用

以上述方式使用hover函数。更重要的是,您也错过了jQuery库


“悬停”状态下的
on
是不推荐使用的jQuery 1.8格式,它在更高版本的jQuery上不起作用。

您不需要将绑定到
文档的事件包装到ready伪事件中的
级别。而且,由于您希望委托事件,可能是为了删除动态元素,正确的方法是绑定
mouseenter和mouseleave
以这种方式进行活动:

最终在处理程序内部按事件类型筛选(in/out)


您不需要将绑定到
document
级别的事件包装到ready pseudo event中。由于您希望将事件委托给hanlde动态元素,正确的方法是以以下方式绑定
mouseenter和mouseleave
事件:

最终在处理程序内部按事件类型筛选(in/out)



使用
mouseover
。当你包含jQuery时,你的提琴可以工作…它说
$没有定义
,这仅仅意味着jQuery没有正确加载,如果你包含它,一切都正常。请查看最新的提琴用法
mouseover
。当你包含jQuery时,你的提琴可以工作…它说
$没有定义
,它是mply意味着jquery没有正确加载,如果包含它,一切正常。请查看最新的fiddle,它不是100%正确的,因为
hover()
event在v1.8.3中有效,它是从v1.9或更高版本中弃用的。您可以在官方文档中查看它:@fbid,阅读这里的真实来源,它说jQuery 1.8中弃用了,在1.9中删除了,我使用了弃用这个词:)但是您没有在这里委派事件是的,它是从v1.8中弃用的,但您写道它将不起作用比1.8更高的版本,这不是100%正确,无论如何,这只是为了澄清是的..谢谢你的信息。:)这不是100%正确,因为
hover()
event在v1.8.3中有效,它是从v1.9或更高版本中弃用的。您可以在官方文档中查看它:@fbid,阅读这里的真实来源,它说jQuery 1.8中弃用了,在1.9中删除了,我使用了弃用这个词:)但是您没有在这里委派事件是的,它是从v1.8中弃用的,但您写道它将不起作用高于1.8的版本,这不是100%正确,无论如何,这只是为了澄清…谢谢你提供的信息。:)Scroll事件不冒泡,这是委派它所必需的。请参阅变通方法感谢有关Scroll事件不冒泡的重要信息。Scroll事件不冒泡,这是委派它所必需的。请参阅变通方法谢谢对于滚动事件不冒泡的重要信息。
$("select#selectBox").hover(function() {
 alert("working");
});
$(document).on('mouseenter mouseleave', "#selectBox", function(e) {
  alert("done: " + e.type);
});