一.原生js判断元素是否隐藏
1.通过offsetParent判断,使用这种方法来判断当前元素是否被隐藏,包括通过设置父元素为display:none以及自己本身为none的情况。但是如果是通过设置visibility:hidden则无法检测出。
function isHidden(el){
return el.offsetParent === null;
}
2.通过getComputedStyle方式判断
function isHidden(el){
var style = window.getComputedStyle(el);
return (style.display === 'none')
}
3.更简单的方式el.style.display
function isHidden(el){
return (el.style.display === ''|| el.style.display === 'none')
}
二.jq判断元素是否隐藏
1.通过.css()方法来判断,display来判断
function isHidden($el){
return $el.css('display') === 'none';
}
2.通过jq的伪类:hidden/:visible来判断
function isHidden($el){
return $el.is(':hidden');
}
function isHidden($el){
return !$el.is(':visible')
}
本文介绍了使用原生JS和jQuery判断网页元素是否被隐藏的方法,包括offsetParent, getComputedStyle, style.display属性及jQuery的css和伪类选择器。适用于前端开发者理解和解决元素可见性问题。

324

被折叠的 条评论
为什么被折叠?



