从许多其他的SO问题中我知道IE不支持<option>元素上的鼠标事件。但是,当您打开下拉列表时,它的确会在鼠标光标下方突出显示该选项。当用户将鼠标悬停在突出显示的选项上时,是否可以通过JS方式获得此突出显示的选项?如果有的话,应该有一个附加的好处,那就是它也可以与键盘光标键一起使用(也许)。

我在每个selected上都找到了一个布尔属性<option>,如果在Firefox中将鼠标光标放在该属性上,则为true,但是不幸的是,同一技巧在IE中不起作用。

即使使用jQuery的$("option").filter(":selected")在IE中也不起作用,但在FF中起作用。在IE中,<option>仅在用户选择后才被选择;它基本上是父<select>元素的值。

还有其他方法来获取IE中“几乎”选择的<option>吗?

最佳答案

每个浏览器呈现的下拉菜单都不同。因此,使用不同的选项附加事件处理程序会在Firefox中显示不同的结果,而在IE中显示不同的结果。这也将在Chrome中显示类似结果。

我建议您可以使用JavaScript或Jquery在Fly上(即在运行时)使用HTML元素创建Dropdown。

创建网页时不要创建。尝试此代码,它可能会起作用。

$(function() {
    $("#optionList").change(function(){
            alert("Mouse Hover Fired");
    });
});

10-05 20:41
查看更多