【发布时间】:2014-04-16 11:59:58
【问题描述】:
我正在尝试在这段代码中执行 mouseenter() 和 mouseleave(),
问题是mouseleave事件在离开元素之前被快速执行,
我想弄清楚为什么会这样?
function home(){
$(".light").css("margin-left","440px");
$(".isik").css("margin-left","385px");
$(".isik").parent().attr("href","index.php");
}
function work(){
$(".light").css("margin-left","760px");
$(".isik").css("margin-left","705px");
$(".isik").parent().attr("href","refereanslar.php");
}
function contactus(){
$(".light").css("margin-left","910px");
$(".isik").css("margin-left","855px");
$(".isik").parent().attr("href","iletisim.php");
}
function aboutus(){
$(".light").css("margin-left","600px");
$(".isik").css("margin-left","550px");
$(".isik").parent().attr("href","hakkimizda.php");
}
$(".contactus").mouseenter(function() {
contactus();
})
.mouseleave(function() {
home();
});
$(".work").mouseenter(function() {
work();
})
.mouseleave(function() {
home();
});
$(".aboutus").mouseenter(function() {
aboutus();
})
.mouseleave(function() {
home();
});
您可以在关联的链接中看到完整的代码,
【问题讨论】:
-
在 ul 直接子项中的 #navlist 中签出您的标记应该只是 li 元素。请验证您的标记。如果可以解决问题,您也可以尝试 hover() 代替 mouseleave 和 mouseenter
-
像这样尝试
$('.aboutus').hover(function() { aboutus(); },function() { home(); });,让我知道OP -
谢谢#Pravin Vacihal 我在 UL 中添加了其他元素,因为我希望对这些元素进行样式设置,只有部分元素我希望它们具有样式,而其他元素是正常样式,我可以设置样式吗一些我想要的 lis 是 -45 度???
-
#CJ Ramki 我试过了,但是 onleave 不起作用,因为我正在更改一个元素的 css 我需要它在离开时重置它
标签: javascript jquery mouseenter mouseleave