原生js判断元素是否隐藏,jq判断元素是否隐藏

一.原生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判断元素是否隐藏,jq判断元素是否隐藏)