【发布时间】:2015-03-19 07:19:09
【问题描述】:
我想知道如何在 JavaScript 中隐藏一个不包含任何文本的 DOM 元素,例如:
<ul>
<li>Text</li>
<li>Text</li>
<li>Text</li>
<li>Text</li>
<li>Text</li>
<li>Text</li>
<li></li> <!-- Element to hide -->
</ul>
我目前写过:
var point = document.getElementsByTagName("li");
for(var i = 0; i < point.length; i++){
if(point[i].text==""){
point[i].style.display = "none";
}
}
谢谢!
【问题讨论】:
-
用
points[i].innerHTML代替points[i].text。 -
document.querySelectorAll("li:empty")让您不必循环和比较 -
或者更好,甚至不要使用JS,使用CSS:
li:empty{display:none;} -
感谢您的所有回答,但我只使用 Javascript。
标签: javascript html events dom