0

我有一个select元素,我想检测option用户悬停在哪个元素上。我在这里使用的是 ShankarSangoli 编写的代码,但它不起作用。我已经在 Chrome 中进行了测试。

JSFiddle

$("select").hover(function (e)
{
     var $target = $(e.target); 
     if($target.is('option')){
         alert($target.attr("id"));//Will alert id if it has id attribute
         alert($target.text());//Will alert the text of the option
         alert($target.val());//Will alert the value of the option
     }
});
4

4 回答 4

2

正如聚光灯指出的那样,IE 和 Chrome 不支持将鼠标悬停在选项元素上。但是,如果您已经习惯使用 jQuery,您可以尝试使用组合框,它可以使用底层选择,但使用 ul 和 li 元素构建选项。

于 2012-12-05T22:37:56.670 回答
2

您尝试实现的功能在 Chrome 和 IE 中尚不可用。您当前提到的问题中指出了这一点。

正如@purgatory 101 指出的那样,巧妙地使用组合框将允许您“挂钩”额外的 jquery,这可能允许您 alert(); 悬停时。

只需将源工作到组合框,这将是一个正确方向的指针:

$('ul.ui-autocomplete ui-menu li').hover(function(){
    //do your stuff here.
});
于 2012-12-05T22:41:12.663 回答
1

完成此操作的唯一方法是使用SELECT使用 HTML + JS + CSS 而不是本机控件的替换。

于 2012-12-05T22:33:25.200 回答
0

选项:悬停在 IE11 中有效 - 哇!

于 2014-01-10T11:52:33.810 回答