扩展Jquery插件处理mouseover时内部有子元素时发生

时间: 作者:约且

  

[子元素,样式闪]扩展Jquery插件处理mouseover时内部有子元素时发生样式闪烁

  解决思路如下:  
首先,判断事件的当前节点,也就是jquery的currentTarget是否在target的包含中,即下面的扩展$.containsNode。

  
然后,在调用hover的时候的mouseover和mouseout事件里判断currentTarget是否在target的包含中,即$.fn.fhover扩展  
下面就是相关代码:  
代码如下:

  
$.containsNode = function(parentNode, childNode) {  
汇盛国际平台if (parentNode.contains) {  
return parentNode != childNode && parentNode.contains(childNode);  
} else {  
return !!(parentNode.compareDocumentPosition(childNode) & 16);  
}  
}  
$.fn.fhover = function(over, out) {  
this.hover(function(e) {  
if ($.containsNode(e.target, e.currentTarget)) {  
return;  
}  
over.call(this, e);  
}, function(e) {  
if ($.containsNode(e.target, e.currentTarget)) {  
return;  
}  
out.call(this, e);  
});  
return this;  
}  

(责任编辑:admin)

推荐图片Related

相关文章Related

查看更多热门新闻


首页 | 特效插件 | 常用代码 | 样式素材 | 脚本代码 | css特效

Copyright © 2017-2018 汇盛国际 版权所有

系统要求:本站自适应各终端浏览器分辨率

请使用Google、Firefox、IE9、百度浏览器登录网站

网站地图 | RSS订阅 | 汇盛国际平台