我使用jQuery为具有页内编辑功能的webapp计算DOM元素的高亮蒙版。由于元素可以更改尺寸,因此将在悬停时动态计算遮罩。
其中一个元素是图像滚动条,因此有一个溢出:隐藏在超宽div中的图像。我遇到的问题是让jQuery忽略带溢出的元素:隐藏在宽度/高度计算中。
简而言之:是否有一个jQuery选择器来忽略溢出隐藏的DOM节点?
答案 0 :(得分:1)
您可以创建自定义jQuery选择器,例如even
或odd
,您可以将其命名为notOverflowHidden
$.expr[':'].notOverflowHidden = function(obj){
return ($(obj).css('overflow') !== 'hidden');
};
你可以得到一个溢出属性的节点集合,如下所示:
$('div:notOverflowHidden').each(...);
答案 1 :(得分:0)
现场演示:http://jsfiddle.net/ZYP8Z/
//for example I am selecting divs
$(function(){
$('div').each(function(){
if($(this).css('overflow')!='hidden')
alert($(this).html()); //your action
});
});
答案 2 :(得分:0)
是的,有......
$("*").each(function(){
//only pick those element from DOM whose css has overflow not equal to hidden
if($(this).css("overflow") != "hidden"){
//do your logic
}
});
有关更多JQuery选择器,请参阅以下链接