我正在尝试为我的一个div使用mouseleave函数。我附加了两个不同的小提琴,一个使用jquery,另一个使用普通的javascript。 jquery示例使用(document).on,因为div及其中的所有数据都是通过Ajax调用生成的。两个小提琴在Chrome中运行良好,但是,在Internet Explorer中打开时,警报框会触发两次。有趣的是,如果在Internet Explorer中将警报框更改为console.log(),它只会向控制台写入一次。
之前有人碰到过这个吗?当鼠标离开div时,所需的行为是警报框在Internet Explorer中触发一次。
https://jsfiddle.net/ttu1ouvz/
<div id="myTestDiv">
<p>
testing
</p>
</div>
$(document).on("mouseleave", "#myTestDiv", function() {
alert("Your hovered over the test div");
});
https://jsfiddle.net/ttu1ouvz/4/
<!DOCTYPE html>
<html>
<body>
<div id="myTestDiv" onmouseout="mouseLeft(this)">
<p>
testing
</p>
</div>
<script>
function mouseLeft(x){
alert("Your left the test div");
}
</script>
</body>
</html>
答案 0 :(得分:0)
我使用.hover()
;
$(document).hover(function(){
alert("Your hovered over the test div");
}, function(){
alert("Your mouse leave from the test div");
});
https://api.jquery.com/hover/ https://www.w3schools.com/jquery/event_hover.asp