繁体   English   中英

if语句具有2个单击处理程序的悬停事件

[英]if statement hover event with 2 click handlers

我正在尝试编写一个脚本,该脚本检测div是否可见,这将确定悬停事件是否触发。

如果ID“联系人”被隐藏,则将鼠标悬停在菜单项上将更改块的颜色。 然后,如果您单击另一个菜单项以显示ID“联系人”,则悬停将不起作用。 单击另一个菜单项以隐藏ID“联系人”,然后将允许悬停再次工作。

据我对jsFiddle的了解: http : //jsfiddle.net/YktAZ/123/

我什至不确定我是否需要“ else”,但这是我将悬停“诱骗”为“不工作”或未显示更改的唯一方法。 我真的只需要if允许它工作,然后在不满足条件的情况下不触发悬停。

如果将if语句放在悬停函数中,则将起作用。 基本上,每次执行swap_hover() ,都会向该元素添加新的悬停事件处理程序,实际上并没有打开或关闭该悬停。

最好的方法是做这样的事情:

$("#item").hover(function(){
    //hover on
    if($("#otherItem").is(":visible"){
        //do this code  
    }
}, function(){
    //hover off
    //do this code.
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM