【发布时间】:2015-05-13 00:41:12
【问题描述】:
在我的 JavaScript 中,我使用 css 选择器 [style="display:none"] 并且代码可以在 Chrome、Firefox、Opera 和 Safari(在 Windows 上)按预期工作。
但是在 Internet Explorer(第 11 版)中,不幸的是,它工作时出错了。
用于测试:
只需单击 Chrome 中的按钮(例如#visible_elements_count),然后单击 Internet Explorer 中的按钮。您将体验到不同的返回值。
HTML:
<section>
<ul>
<li>visible Element</li>
<li style="display:none">invisible Element</li>
<li>visible Element</li>
</ul>
</section>
<button id="all_elements_count">all elements</button>
<button id="visible_elements_count">visible elements</button>
<button id="invisible_elements_count">invisible elements</button>
<!-- JAVASCRIPTS -->
<script src="http://code.jquery.com/jquery-1.10.2.js"></script>
<script>
$("#all_elements_count").click(function () {
var counter = $("section ul li").length;
alert(counter);
});
$("#visible_elements_count").click(function () {
var counter = $("section ul li:not([style='display:none'])").length;
alert(counter);
});
$("#invisible_elements_count").click(function () {
var counter = $("section ul li[style='display:none']").length;
alert(counter);
});
</script>
来源: 我阅读了所有内容about selectors!仍然无法解决这个问题。
感谢任何帮助!
【问题讨论】:
标签: jquery css internet-explorer jquery-selectors