原生js判断元素是否隐藏,jq判断元素是否隐藏【转】
一.原生js判断元素是否隐藏
1.通过offsetParent判断,使用这种方法来判断当前元素是否被隐藏,包括通过设置父元素为display:none
以及自己本身为none
的情况。但是如果是通过设置visibility:hidden
则无法检测出。
function isHidden(el){
return el.offsetParent === null;
}
2.通过getComputedStyle方式判断getComputedStyle使用参考
function isHidden(el){
var style = window.getComputedStyle(el);
return (style.display === 'none')
}
3.更简单的方式el.style.display
function isHidden(el){
return (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')
}