我尝试使用$(“element”)手动触发mouseenter事件。触发器(“mouseenter”)。它在除IE8之外的所有浏览器中都能正常工作。
<html><head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js"></script>
<meta charset="utf-8">
</head>
<body>
<div id="box" style="border:5px solid red;width:100px;height:100px">
</div>
<script>
$(function(){
$("#box").mouseenter( function(event){
console.log("mouseenter triggered!!");
});
$("#box").trigger("mouseenter");
//$("#box").mouseenter();
});
</script>
</body></html>
答案 0 :(得分:-3)
IE8对新版本的jQuery没有太多支持。我知道jQuery这么说但是并不总是如此。在jQuery 1.6之前尝试使用旧库。您甚至可以添加浏览器检测功能以在两个库之间切换。
- edit-- 好的,反复标记下来,让我扩展我的答案。我不是建议放弃新的JQ库,因为那确实是愚蠢的。
测试您的功能是否适用于较旧的JQ库。如果是这样,您将不得不尝试使用Modernizr或其他类型的检测软件来为该浏览器提供旧的jQuery库。如果没有 - 并且在大多数情况下不应该 - 那么就为新的jQuery库提供服务。
- 编辑2--事实上这似乎解决了海报的问题,嗯?