如何使用 . hide () 、.show () 或.toggle () 来切换元素的可见度 ?
如果元素可见或隐藏, 我如何测试 ?
如何使用 . hide () 、.show () 或.toggle () 来切换元素的可见度 ?
如果元素可见或隐藏, 我如何测试 ?
当前回答
$( "div:visible" ).click(function() {
$( this ).css( "background", "yellow" );
});
$( "button" ).click(function() {
$( "div:hidden" ).show( "fast" );
});
api 文档: 可见选择器
其他回答
您需要检查... 显示和可见度 :
if ($(this).css("display") == "none" || $(this).css("visibility") == "hidden") {
// The element is not visible
} else {
// The element is visible
}
如果我们自动检查$( thiss) 。 is (“: 可见”) , jquery check for both the things 自动检查 。
有太多的方法可以检查隐藏元素。 这是最好的选择(我刚刚推荐你):
使用 jquery, 生成一个元素, 隐藏在 css 中的“ display: noone ” 。
要点是:
$('element:visible')
和供使用的示例:
$('element:visible').show();
这对我来说是有效的,我用表演和隐藏来使我的 div 隐藏/可见:
if( $(this).css('display') == 'none' ){
/* your code goes here */
} else {
/* alternate logic */
}
只需检查该元素是否可见, 并返回一个布尔。 jquery 通过在元素中添加无显示来隐藏元素, 所以如果您想要使用纯正的 javascript, 您仍然可以这样做, 例如 :
if (document.getElementById("element").style.display === 'block') {
// Your element is visible; do whatever you'd like
}
您也可以使用jquery, 因为您的代码的其余部分似乎使用这个代码, 而您有小块代码。 类似在jquery的下面的东西, 也为您玩同样的把戏:
if ($(element).is(":visible")) {
// Your element is visible, do whatever you'd like
};
使用 cs 方法在 jquery 中也可以产生同样的结果 :
if ($(element).css('display') === 'block') {
// Your element is visible, do whatever you'd like
}
在检查能见度和显示情况时,您还可以做以下工作:
if ($(this).css("display") === "block" || $(this).css("visibility") === "visible") {
// Your element is visible, do whatever you'd like
}
$('someElement').on('click', function(){ $('elementToToggle').is(':visible')