Jquery:鼠标悬停时突出显示在某些页面上不起作用

时间:2010-11-26 00:13:46

标签: jquery

在外部站点上测试此jquery代码(通过代理加载以绕过单一原始策略),似乎某些站点在鼠标悬停时未出现预期的红色边界线。如何确保鼠标悬停在红色边框线上总是出现在其他任何东西之上?可能是鼠标悬停时突出显示的某个站点,z-index或其他一些古怪可能导致此问题,但没有出现javascript错误....

$(document)
    .mouseover(function(event) {  
        if ($(event.target).parents('#myunique').length){ 
            event.preventDefault();
        }else{ 
        $(event.target).addClass('myoutlineElement');
        }
    })
    .mouseout(function(event) {
        if ($(event.target).parents('#myunique').length){  
            event.preventDefault();
        }else{      
        $(event.target).removeClass('myoutlineElement');  
        }
    })   

2 个答案:

答案 0 :(得分:1)

鼠标悬停/退出不起作用?或者边框没有被应用。

尝试使用firebug调试console.log(event.target);,以检查事件是否被触发。

另外请注意,如果元素通过style属性(style="border:...;")定义了边框样式,则类不会覆盖它,因为样式属性更具体。

除非您使用!important指令,否则@aendrew会在其答案中提及。

答案 1 :(得分:1)

在你定义.myoutlineElement的CSS的地方,你可以尝试添加一个z-index声明,如:

... z-index: 99 !important;