如何使用 . hide () 、.show () 或.toggle () 来切换元素的可见度 ?
如果元素可见或隐藏, 我如何测试 ?
如何使用 . hide () 、.show () 或.toggle () 来切换元素的可见度 ?
如果元素可见或隐藏, 我如何测试 ?
当前回答
演示式链接
$( 点击“ 点击' ” ) 。 点击( 函数 ) { $( 书 ) { $( 书 ) } toggle (' slow' , 函数 () {/ // 动画完成 ) 。 提醒 ($( 书 ) . is ( : : 可以看到 ) ); / lt; - - 如果隐藏, 如果可见假 ) , 则真实 ; } ; ; & lt; 鼠标; 标 src= "https:// upload. wikimedia. org/ wikipedia/ commons/8/ 87/ chrome_ icon_ 282011. 29. png" alt=" 宽度= 300"/ & gt; https://upload. / & gt;
来源(来自我的博客):
博客加插 nplay - jquery 工具和部件: 如何使用 jquery 查看元素是否隐藏或可见 ?
其他回答
这是内部拼写如何解决这个问题的:
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 );
};
只要元素是可见的, 便会返回真实状态 。
您可以在显示或隐藏 cs 类时,通过切换该类来使用该 Cs 类 :
.show{ display :block; }
设置您的 jquery toggle类 () 或添加类 () 或删除类 () 。
举个例子,
jquery (' myid'. 切换类 ('show')
当元素没有显示时, 上面的代码会添加显示 cs 类, 而当元素显示类别时, 将会删除 。
当你在检查它是否可见时, 你可以遵循这个拼字码,
jquery ('mid'.) 有类('show');
上面的代码将返回一个布尔, 当 Myid 元素含有我们的类( show) , 而当它没有( show) 类( show) 时则返回一个布尔 。
简单检查显示属性(或视您喜欢的隐形类型而定的可见度) 。 例如 :
if ($('#invisible').css('display') == 'none') {
// This means the HTML element with ID 'invisible' has its 'display' attribute set to 'none'
}
公平而言,问题早于这一答复的日期。
而不是批评行动, 而是帮助所有仍在问这个问题的人。
确定是否可见事物的正确方式是咨询你的视觉模型;
如果你不知道这意味着什么 那你就要踏上 探索之旅 这将使你的工作变得不那么困难
以下是模型视图模型结构概览(mvvm)。
knockoutjs 是一个具有约束力的图书馆, 它能让您在不学习整个框架的情况下尝试这些 。
这里有一些刺绣代码 和可能看不到的迪夫。
<html>
<body>
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.1/knockout-min.js"></script>
<script>
var vm = {
IsDivVisible: ko.observable(true);
}
vm.toggle = function(data, event) {
// Get current visibility state for the div
var x = IsDivVisible();
// Set it to the opposite
IsDivVisible(!x);
}
ko.applyBinding(vm);
</script>
<div data-bind="visible: IsDivVisible">Peekaboo!</div>
<button data-bind="click: toggle">Toggle the div's visibility</button>
</body>
</html>
注意, 切换函数不咨询 dom 以决定 div 的可见度; 它会查询视图模型 。
$('someElement').on('click', function(){ $('elementToToggle').is(':visible')