如何使用 . hide () 、.show () 或.toggle () 来切换元素的可见度 ?
如果元素可见或隐藏, 我如何测试 ?
如何使用 . hide () 、.show () 或.toggle () 来切换元素的可见度 ?
如果元素可见或隐藏, 我如何测试 ?
当前回答
此处还包含一个永久有条件的表达式, 以检查元素的状态, 然后切换它 :
$('someElement').on('click', function(){ $('elementToToggle').is(':visible') ? $('elementToToggle').hide('slow') : $('elementToToggle').show('slow'); });
其他回答
这是内部拼写如何解决这个问题的:
jQuery.expr.pseudos.visible = function( elem ) {
return !!( elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length );
};
如果您不使用 jquery, 你可以只是利用这个代码 并把它变成你自己的功能:
function isVisible(elem) {
return !!( elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length );
};
只要元素是可见的, 便会返回真实状态 。
ebdiv 应设置为样式=“ display: noone; ” 。 它用于显示和隐藏 :
$(document).ready(function(){
$("#eb").click(function(){
$("#ebdiv").toggle();
});
});
人们可以简单地使用隐藏或可见属性,例如:
$('element:hidden')
$('element:visible')
或您可以简化相同内容如下。
$(element).is(":visible")
启动 adblucer 使用可见检查的示例 :
$( document). ready( 职能 () { 如果 ($( " ablocker check" ) ) $( " " a blockermsg" ) $( "请禁用 a blockermsg" ) 。 text ("请禁用 a blockercher " ) 。show (; }) ; & lt; 上标 src= "https://ajax.googleapis. com/ajax/ libs/ jquery/ 2. 1.1/jquery. min. js" & gt; < / split> /div> = " a blockercheck" = " a blockergsg" ty= "display: non' gt;/ div>
“ 阻塞检查” 是一个 adblocker 区块的代号。 所以如果它可见, 您可以检测是否打开了阻塞器 。
$( document). ready( { var discrible () { var revision = $ (' retemintion' ). is (': visible' ) ; 如果 (visible) { 备注 (“ 可见”) { 备注 ” ; // code} 其它 { 备警 (“ hidden” ) ;}} } ; & lt; 标注 src= "https://code. jquery. com/jquery-1.10.2. js; & gt;/ statimt>