在离开元素之前执行的mouseleave:javascript

时间:2014-04-16 11:59:58

标签: javascript jquery mouseenter mouseleave

我正在尝试在此代码中执行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();
        });

您可以在相关链接中看到完整的代码,

http://filikaajans.com/test/index.php

1 个答案:

答案 0 :(得分:1)

以下是问题: 当鼠标中心事件发生时和两个图像,例如

$(".light").css("margin-left","760px");
$(".isik").css("margin-left","705px");

放置在实际的悬停元素上,触发鼠标离开事件,因为鼠标现在位于.isik图像上方.... 要证明我在说什么:只需删除isik图片即可...