如何使用 . hide () 、.show () 或.toggle () 来切换元素的可见度 ?
如果元素可见或隐藏, 我如何测试 ?
如何使用 . hide () 、.show () 或.toggle () 来切换元素的可见度 ?
如果元素可见或隐藏, 我如何测试 ?
当前回答
使用类切换,而不是样式编辑.
使用指定用于“ 隐藏” 元素的类是容易的, 也是最有效的方法之一 。 套用“ 隐藏” 的显示样式“ 无” 将比直接编辑该样式更快 。 我在堆叠溢出问题中解释了其中的一些内容, 使两个元素可见/ 隐藏在同一 div 中 。
缩略式最佳做法和优化
Google前端工程师Nicholas zakas在Google科技演讲中,
加速您的 Javascript (Youtube) 速度
其他回答
这个问题最简单的答案是:
function checkUIElementVisible(element) {
return ((element.css('display') !== 'none') && (element.css('visibility') !== 'hidden'));
}
if($(element).is(":visible")) {
console.log('element is visible');
} else {
console.log('element is not visible');
}
有两种方法可以检查元素的可见度。
解决办法1
if($('.selector').is(':visible')){
// element is visible
}else{
// element is hidden
}
解决办法2
if($('.selector:visible')){
// element is visible
}else{
// element is hidden
}
if($("h1").is(":hidden")){
// your code..
}
简单检查显示属性(或视您喜欢的隐形类型而定的可见度) 。 例如 :
if ($('#invisible').css('display') == 'none') {
// This means the HTML element with ID 'invisible' has its 'display' attribute set to 'none'
}