【发布时间】:2012-01-24 12:55:08
【问题描述】:
下面的 html 代码生成一个红色的 div,其中有一个 select 元素。使用 div,附加 mouseenter 和 mouseleave 事件,即当鼠标指针悬停在 div 上时,div 背景颜色变为黄色,当离开 div 时,它又变回红色。
在 mozilla 中,当鼠标指针进入 div 时,它会变成黄色。当我选择下拉选项值时,它也保持黄色,但这在 IE 中没有发生。当我选择第一个选项时,div 背景变成红色,这不应该发生。请帮我看看这个例子。
<html>
<head>
<script type="text/javascript" language="javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript" language="javascript">
$(function(){
$("#selectDiv").mouseenter(function(){
$("#selectDiv").css("background-color","yellow");
}).mouseleave(function(){
$("#selectDiv").css("background-color","red");
});
});
</script>
</head>
<body>
<div id="selectDiv" style="margin:20px; background-color:red;height:100px;width:100px;">
<select style="margin:10px;">
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
</select>
</div>
</div>
</body>
</html>
【问题讨论】:
-
行为在哪个版本的 IE 中被破坏?
-
我认为这里有类似的东西:stackoverflow.com/questions/2278514/…
-
在jsfiddle.net/3GhT2创建了一个jsfiddle