我需要a将所有li元素都放入数组。 ul和li都应该不 visibility: hidden
和不 display: none
。这是我的代码。
var links = $("li").is(":visible").is(":hidden");
var currentLink = links.first();
alert(currentLink.text());
这是我的清单
<ul>
<li style='display: none'>Coffee</li>
<li style='visibility: hidden'>Tea</li>
<li>Milk</li>
</ul>
(我需要在提醒中显示茶,而不是咖啡)
但是我遇到这个错误,
TypeError:$(...)。is(...)。is不是函数
答案 0 :(得分:1)
您可以使用.css("visibility") != "hidden"
$(document).ready(function(){
$('ul li').each(function(index, item){
if($(item).css("visibility") != "hidden"){
console.log($(item).text())
}
})
})
$(document).ready(function(){
$('ul li').each(function(index, item){
if($(item).css("visibility") != "hidden"){
console.log($(item).text())
}
})
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul>
<li>Test visible</li>
<li style="visibility: hidden">Hidden</li>
<li>Test visible2</li>
</ul>
答案 1 :(得分:0)
通过查看答案,我设法创建了一个完美的答案。我发布此邮件是为了防止将来有人提出相同的问题。非常感谢大家的帮助。
var links = [];
$("li:not(:hidden)").each(function(index, item){
if($(item).css("visibility") != "hidden"){
links.push(item);
}
});