我有以下 jQuery 函数,但我不知道为什么它在我放弃悬停后再次显示。这个概念是,如果类存在,则在加载新菜单(从 1.php 开始)后删除它们,等待 1000 并添加新类。它工作正常,但是当我将鼠标移动到其他方向后,该概念再次运行。为什么?
$(document).ready(function () {
$("#cikkek").hover(function () {
$("div.navbar2").removeClass("visible");
$("div.logo-rotate").removeClass("logo-rotate2");
$("a.font-visibility").removeClass("font-visible");
$("div.block1").load("1.php");
setTimeout(function () {
$("div.navbar2").addClass("visible");
$("div.logo-rotate").addClass("logo-rotate2");
$("a.font-visibility").addClass("font-visible");
}, 1000);
});
});
最佳答案
jQuery hover
绑定(bind) 2 个事件,mouseenter
和 mouseleave
,因此它会触发两次。
您可以使用空的 mouseleave
函数,也可以不使用 hover
将其更改为 mouseenter
$("div").mouseenter(function() {
$(this).css("background-color", "blue");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div>
Enter your mouse here
</div>
关于javascript - jQuery函数显示2次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38942357/