我正在使用 JS 来更改我正在创建的 SPA 的内容。当我按下一个按钮来更改内容时,HTML 会发生以下变化:
<div id="selectDiv" style="display: none;">
为此:
<div id="selectDiv" style>
现在我的 SPA 的一部分有一个包含许多复选框的 div,每个复选框代表一个 div,所以当我按下提交按钮时,应该显示的下一个 div 将是复选框列表中的第一个元素已选中。
我想知道 JQuery 中是否有一种方法可以让代码“几乎检测到”哪个 div 现在可见。像这样:
if($('#selectDiv').isVisible()){
//JS code associated with this div.
}
有什么建议吗?
您可以使用 .is(':visible')
Selects all elements that are visible.
例如:
if($('#selectDiv').is(':visible')){
此外,您可以通过以下方式获取可见的 div:
$('div:visible').callYourFunction();
实例:
console.log($('#selectDiv').is(':visible'));
console.log($('#visibleDiv').is(':visible'));
#selectDiv {
display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="selectDiv"></div>
<div id="visibleDiv"></div>