我正在使用codeschool.com学习jQuery,一个问题困扰着我。 我们正在学习在单个jQuery条目中选择多个html元素。使用的html代码如下,我们应该选择亚洲类的元素和销售类的元素。
正确答案是$(“。asian,.sale”)
我的问题是,“.sale”是如何成为班级的名字的?如果你查看下面的html,你会发现没有带有“class = sale”的元素,只是一个带有class =“europe sale”的元素。“为什么jQuery要求”.sale“而不是”。欧洲销售“?
<div id="tours-wrapper">
<h1>Guided Tours</h1>
<ul id="tours">
<li class="america">
<h2>New York, New York</h2>
<span class="details">$1,899 for 7 nights</span>
<ul class="vote"><li><a href="#">↑</a></li><li><a href="#">↓</a></li></ul>
</li>
<li class="europe sale">
<h2>Paris, France</h2>
<span class="details">$2,499 for 7 nights</span>
<ul class="vote"><li><a href="#">↑</a></li><li><a href="#">↓</a></li></ul>
</li>
<li class="europe">
<h2>Madrid, Spain</h2>
<span class="details">$1,577 for 5 nights</span>
<ul class="vote"><li><a href="#">↑</a></li><li><a href="#">↓</a></li></ul>
</li>
<li class="asia">
<h2>Tokyo, Japan</h2>
<span class="details">$1,999 for 5 nights</span>
<ul class="vote"><li><a href="#">↑</a></li><li><a href="#">↓</a></li></ul>
</li>
</ul>
<ul class="sorting">
<li><a href="#">America</a></li>
<li><a href="#">Europe</a></li>
<li><a href="#">Asia</a></li>
</ul>
</div>
答案 0 :(得分:2)
班级europe sale
类似于两个班级europe
,另一个sale
可以选择每个班级或europe
或sale
,但始终使用班级{{} {1}}
要选择包含两个班级europe sale
的元素,您可以采取更多方式,例如:
europe sale
或
$('.europe')
选择元素,因为该类包含在类
的数组中要仅使用类$('.sale')
的元素,您可以执行以下操作:
europe sale
答案 1 :(得分:2)
html中的类由空格分隔。因此,如果您设置“欧洲销售”,则两者都被视为元素的类。
答案 2 :(得分:1)
<li class="europe sale">
基本上有两个班级。一个是欧洲,第二个是销售。
答案 3 :(得分:0)
可以将更多类应用于一个HTML元素。它们是空间分开的。
答案 4 :(得分:0)
由于class属性包含空格字符,实际上有2个类与该元素关联,.europe
和.sale
。
答案 5 :(得分:0)
class属性中的每个单词都是class。 欧洲 - 是第一类使用,销售是第二类。
答案 6 :(得分:0)
可以多次定义类。在样式表中有两个类,一个是欧洲,另一个是销售,即使你想要,也可以用空格指定更多的类。现在在你的jquery中,你正在选择一个类销售。如果您想选择包含欧洲类的销售类,那么您可以选择此$('.europe.sale')
答案 7 :(得分:0)
CSS允许在单个元素中使用多个类名。这意味着您的li
元素同时包含europe
和sale
类。
MDN说:
<强>类强>: 此属性是元素类的空格分隔列表。类允许CSS和Javascript通过类选择器或函数(如DOM方法document.getElementsByClassName)选择和访问特定元素。
答案 8 :(得分:0)
来自HTML4 specification(强调我的):
class = cdata-list [CS]
此属性为元素分配类名称或类名称集。可以为任意数量的元素分配相同的类名或 名。 多个类名必须用空格分隔 字符。强>
因此,如果某个元素具有属性class="europe sale"
,则表示它有两个类:europe
和sale
。