jQuery-选择列表选项悬停

时间:2012-02-04 19:41:55

标签: jquery

我想在鼠标光标悬停时提醒选项。我使用这段代码:

$("select > option").hover(function ()
    { 
        alert($(this).attr("id"));
    });

不幸的是,这既不适用于IE也不适用于FF。

有人可以给我一个暗示吗?

3 个答案:

答案 0 :(得分:20)

你可以试试这个。

$("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
     }
});

答案 1 :(得分:4)

如果您通过添加“size = x”属性来制作“列表框”类型选择框:

<select size="3">
   <option>...</option>
   <option>...</option>
</select>

悬停事件将适用于选项元素:

$('option').hover(function(){
     //code here
});

答案 2 :(得分:1)

这是一种解决方法(我觉得相当不错) -

  • 使用mouseover事件将选择框的大小设置为等于no。其子女
  • 使用mouseenter事件获取选项。当mouseenter属性存在时,size可以完美地处理选项(我们现在都知道了)
  • 使用mouseout事件将选择框的大小设置回1,以便返回正常的选择框:)

JSFiddle