班级如何游泳,为什么不能全球访问?
这是我的HTML代码:
<section id="sports">
<p class="swim">Swim</p>
<p id="bike">Bike</p>
<p>Run</p>
</section>
答案 0 :(得分:0)
CSS类.swim
的节点实际上是全局的,文档中的任何节点也是如此。
您可以在.swim { display: none; };
在Javascript document.querySelectorAll('.swim')[0].style.display = 'none';
或jQuery $('。swim');
答案 1 :(得分:0)
班级
swim
怎么样,为什么不能全局访问?
不,与ID不同,您无法使用其类“全局”(通过window
对象)访问元素。原因是那不是规范。
无论如何,这意味着什么?许多元素具有相同的类,那么window.<class>
意味着什么?它会是一个阵列吗? HTML可以包含数十个,数百个或数千个具有相同类的元素。
每次元素上的类发生更改时,必须更新所有这些全局对象的速度非常慢。因为你有getElementsByClassName
和querySelector[All]
。
顺便说一句,无论如何,通过window
对象中的ID访问元素都不是最佳做法。