IE和Chrome不火的鼠标悬停事件 分子(IE and Chrome don't fir

2019-07-20 10:02发布

我的代码只适用于Firefox。 为什么是这样?

HTML:

<select id="selecter">
         <option>one</option>
         <option>two</option>
         <option>three</option>
   </select>

使用Javascript:

$(function() {
   $(document).on("mouseover", "#selecter option",function(){
            alert(1)        
    });
});

我很好奇,为什么IE和Chrome不会触发鼠标悬停事件。 看到这个的jsfiddle: http://jsfiddle.net/yT6Y5/72/ (在Firefox中完美的作品。)

我怎样才能获得IE和Chrome火鼠标悬停事件?

Answer 1:

问题是,浏览器呈现下拉菜单不同。 Chrome的渲染它不是作为一个HTML组件,但作为一个本地的GUI之一。 这不能从JS与之相关联的悬停处理程序。

如果你想确保它适用于所有的浏览器或者不使用下拉或得到一个脚本来创建一个使用HTML元素下拉



Answer 2:

看来,当你将鼠标悬停在IE浏览器中的铬和一种选择没有事件实际上解雇,

在最好的情况应该应该绑定在变化事件。

$(function() {
    $("#selecter").change(function(){
            alert(1);
    });
});


Answer 3:

也许你应该使用,不同的方法来绑定事件

 $(function() {
    $("#selecter").mouseover(function(){
        alert(1)        
     });
  });


文章来源: IE and Chrome don't fire a mouseover event for