freeCodeCamp/guide/chinese/jquery/jquery-selectors/index.md

136 lines
4.3 KiB
Markdown
Raw Normal View History

---
title: jQuery Selectors
localeTitle: jQuery选择器
---
## jQuery选择器
jQuery使用CSS样式选择器来选择HTML页面的部分或元素。然后它允许您使用jQuery方法或函数对元素执行某些操作。
要使用其中一个选择器,请在其后键入美元符号和括号: `$()` 。这是`jQuery()`函数的简写。在括号内,添加要选择的元素。您可以使用单引号或双引号。在此之后,在括号和要使用的方法之后添加一个点。
在jQuery中类和ID选择器与CSS中的类似。
这是一个选择所有段落元素的jQuery方法的示例并为它们添加了一个“selected”类
```javascript
<p>This is a paragraph selected by a jQuery method.</p>
<p>This is also a paragraph selected by a jQuery method.</p>
$("p").addClass("selected");
```
在jQuery中类和ID选择器与CSS中的相同。如果要选择具有特定类的元素请使用点 `.` 和类名。如果要选择具有特定ID的元素请使用井号 `#` 和ID名称。请注意HTML不区分大小写因此最好将HTML标记和CSS选择器保持为小写。
按班级选择:
```javascript
<p class="p-with-class">Paragraph with a class.</p>
$(".p-with-class").css("color", "blue"); // colors the text blue
```
按ID选择
```javascript
<li id="li-with-id">List item with an ID.</li>
$("#li-with-id").replaceWith("<p>Socks</p>");
```
您还可以选择某些元素及其类和ID
### 按班级选择
如果要选择具有特定类的元素,请使用点(。)和类名。
```html
<p class="pWithClass">Paragraph with a class.</p>
```
```javascript
$(".pWithClass").css("color", "blue"); // colors the text blue
```
您还可以将类选择器与标记名称结合使用,以使其更具体。
```html
<ul class="wishList">My Wish List</ul>`<br>
```
```javascript
$("ul.wishList").append("<li>New blender</li>");
```
### 按ID选择
如果要选择具有特定ID值的元素请使用井号和ID名称。
```html
<li id="liWithID">List item with an ID.</li>
```
```javascript
$("#liWithID").replaceWith("<p>Socks</p>");
```
与类选择器一样,它也可以与标签名称结合使用。
```html
<h1 id="headline">News Headline</h1>
```
```javascript
$("h1#headline").css("font-size", "2em");
```
### 充当过滤器的选择器
还有一些选择器充当过滤器 - 它们通常以冒号开头。例如, `:first`选择器选择其父元素的第一个子元素。这是一个包含一些列表项的无序列表的示例。列表下方的jQuery选择器选择列表中的第一个`<li>`元素 - “One”列表项 - 然后使用`.css`方法将文本变为绿色。
```html
<ul>
<li>One</li>
<li>Two</li>
<li>Three</li>
</ul>
```
```javascript
$("li:first").css("color", "green");
```
**注意:**不要忘记在JavaScript中应用css不是一个好习惯。您应该始终在css文件中提供样式。
另一个过滤选择器`:contains(text)` ,选择具有特定文本的元素。将要匹配的文本放在括号中。这是一个有两段的例子。 jQuery选择器使用单词“Moto”并将其颜色更改为黄色。
```html
<p>Hello</p>
<p>World</p>
```
```javascript
$("p:contains('World')").css("color", "yellow");
```
类似地, `:last`选择器选择其父级的最后一个子元素。下面的JQuery选择器选择列表中的最后一个`<li>`元素 - “三”列表项 - 然后使用`.css`方法将文本变为黄色。
`$("li:last").css("color", "yellow");`
**注意:**在jQuery选择器中 `World`是单引号,因为它已经在一对双引号内。始终在双引号内使用单引号以避免无意中结束字符串。
**多个选择器** 在jQuery中您可以使用多个选择器使用一行代码将相同的更改应用于多个元素。您可以通过用逗号分隔不同的ID来完成此操作。例如如果要将ids catdog和rat的三个元素的背景颜色分别设置为红色只需执行以下操作
```
$("#cat,#dog,#rat").css("background-color","red");
```
这些只是可用于jQuery的一些选择器。有关jQuery网站上完整列表的链接请参阅“更多信息”部分。
#### 更多信息:
* [jQuery选择器的完整列表](http://api.jquery.com/category/selectors/)