如何使元素的可见度.hide()
, .show()
,或.toggle()
?
如果一个元素是visible
或hidden
?
如何使元素的可见度.hide()
, .show()
,或.toggle()
?
如果一个元素是visible
或hidden
?
当前回答
您可以使用这个:
$(element).is(':visible');
$(document).ready(function()
{
$("#toggle").click(function()
{
$("#content").toggle();
});
$("#visiblity").click(function()
{
if( $('#content').is(':visible') )
{
alert("visible"); // Put your code for visibility
}
else
{
alert("hidden");
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script>
<p id="content">This is a Content</p>
<button id="toggle">Toggle Content Visibility</button>
<button id="visibility">Check Visibility</button>
其他回答
使用隐藏选择, 您可以匹配所有隐藏元素
$('element:hidden')
使用可见选择, 您可以匹配所有可见元素
$('element:visible')
人们可以简单地使用hidden
或visible
属性, 如 :
$('element:hidden')
$('element:visible')
或者您可以简化相同的是如下所示。
$(element).is(":visible")
content.style.display != 'none'
function toggle() {
$(content).toggle();
let visible= content.style.display != 'none'
console.log('visible:', visible);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button onclick="toggle()">Show/hide</button>
<div id="content">ABC</div>
公平地说,问题在日期之前这笔回答。
我不是要批评《任择议定书》,而是要帮助任何仍在提出这一问题的人。
确定某物是否可见的正确方法是咨询你的视觉模型;
如果你不知道这意味着什么 那你就要踏上发现之旅 让你的工作变得不那么困难了
以下是对示范 -- -- 观观 -- -- 模型建筑(MVVM)。
击出JS是一个具有约束力的图书馆, 它会让您在不学习整个框架的情况下尝试这些 。
这里有一些 JavaScript 代码和一个DIV 可能可见也可能看不到。
<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>
请注意,切换函数不与国防部协商确定 div 的可见度;它参考视觉模型。
只是简单地检查一下这个元素是否是可见可见然后,他将返回尘埃,布尔j 查询,通过添加来隐藏元素无显示无对于元素,所以如果您想要使用纯 JavaScript,您仍然可以这样做,例如:
if (document.getElementById("element").style.display === 'block') {
// Your element is visible; do whatever you'd like
}
另外,您还可以使用 jQuery , 您的代码的其余部分似乎也使用 JQuery , 您的代码块较小 。 在 jQuery 中, 类似下面的密钥也可以使用相同的密钥 :
if ($(element).is(":visible")) {
// Your element is visible, do whatever you'd like
};
还使用css
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
}