jQuery - Селекторы
Библиотека jQuery использует возможности селекторов каскадных таблиц стилей (CSS), позволяя нам быстро и легко получать доступ к элементам или группам элементов в объектной модели документа (DOM).
Селектор jQuery - это функция, которая использует выражения для поиска совпадающих элементов из модели DOM на основе заданных критериев. Вы можете просто сказать, что селекторы используются для выбора одного или нескольких элементов HTML с помощью jQuery. Как только элемент выбран, мы можем выполнять различные операции с этим выбранным элементом.
Заводская функция $ ()
Селекторы jQuery начинаются со знака доллара и скобок - $(). Заводская функция$() использует следующие три строительных блока при выборе элементов в данном документе -
Sr. No. | Селектор и описание |
---|---|
1 | Tag Name Представляет имя тега, доступное в DOM. Например$('p') выделяет все абзацы <p> в документе. |
2 | Tag ID Представляет тег, доступный с данным идентификатором в DOM. Например$('#some-id') выбирает единственный элемент в документе с идентификатором some-id. |
3 | Tag Class Представляет тег, доступный для данного класса в DOM. Например$('.some-class') выбирает все элементы в документе, которые имеют класс некоторого класса. |
Все перечисленные выше элементы можно использовать отдельно или в сочетании с другими селекторами. Все селекторы jQuery основаны на том же принципе, за исключением некоторых настроек.
NOTE - Заводская функция $() является синонимом jQuery()функция. Итак, если вы используете любую другую библиотеку JavaScript, где$ знак конфликтует с чем-то еще, тогда вы можете заменить $ подписать jQuery имя, и вы можете использовать функцию jQuery() вместо $().
пример
Ниже приведен простой пример использования селектора тегов. Это выберет все элементы с именем тегаp.
<html>
<head>
<title>The jQuery Example</title>
<script type = "text/javascript"
src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js">
</script>
<script type = "text/javascript" language = "javascript">
$(document).ready(function() {
$("p").css("background-color", "yellow");
});
</script>
</head>
<body>
<div>
<p class = "myclass">This is a paragraph.</p>
<p id = "myid">This is second paragraph.</p>
<p>This is third paragraph.</p>
</div>
</body>
</html>
Это даст следующий результат -
Как использовать селекторы?
Селекторы очень полезны и потребуются на каждом этапе использования jQuery. Они получают именно тот элемент, который вы хотите, из вашего HTML-документа.
В следующей таблице перечислены несколько основных селекторов и приведены их примеры.
Sr. No. | Селектор и описание |
---|---|
1 | имя Выбирает все элементы, которые соответствуют заданному элементу Name. |
2 | #Я БЫ Выбирает один элемент, соответствующий заданному ID. |
3 | .Класс Выбирает все элементы, которые соответствуют заданному Class. |
4 | Универсальный (*) Выбирает все элементы, доступные в DOM. |
5 | Несколько элементов E, F, G Выбирает объединенные результаты всех указанных селекторов E, F или же G. |
Примеры селекторов
Подобно приведенному выше синтаксису и примерам, следующие примеры дадут вам представление об использовании другого типа других полезных селекторов:
Sr. No. | Селектор и описание |
---|---|
1 | $('*') Этот селектор выбирает все элементы в документе. |
2 | $("p > *") Этот селектор выбирает все элементы, которые являются дочерними элементами элемента абзаца. |
3 | $("#specialID") Эта функция-селектор получает элемент с id = "specialID". |
4 | $(".specialClass") Этот селектор получает все элементы, имеющие класс specialClass . |
5 | $("li:not(.myclass)") Выбирает все элементы, соответствующие <li>, у которых нет class = "myclass". |
6 | $("a#specialID.specialClass") Этот селектор сопоставляет ссылки с идентификатором specialID и классом specialClass . |
7 | $("p a.specialClass") Этот селектор сопоставляет ссылки с классом specialClass, объявленным в элементах <p>. |
8 | $("ul li:first") Этот селектор получает только первый элемент <li> из <ul>. |
9 | $("#container p") Выбирает все элементы, соответствующие тегу <p>, которые являются потомками элемента, имеющего идентификатор контейнера . |
10 | $("li > ul") Выбирает все элементы, соответствующие <ul>, которые являются дочерними элементами элемента, соответствующего <li> |
11 | $("strong + em") Выбирает все элементы, соответствующие тегу <em>, которые сразу же следуют за одноуровневым элементом, соответствующим тегу <strong>. |
12 | $("p ~ ul") Выбирает все элементы, соответствующие <ul>, которые следуют за одноуровневым элементом, совпадающим с <p>. |
13 | $("code, em, strong") Выбирает все элементы, соответствующие <code>, <em> или <strong>. |
14 | $("p strong, .myclass") Выбирает все элементы, соответствующие <strong>, которые являются потомками элемента, соответствующего <p>, а также все элементы, которые имеют класс myclass . |
15 | $(":empty") Выбирает все элементы, у которых нет дочерних элементов. |
16 | $("p:empty") Выбирает все элементы, соответствующие <p>, у которых нет дочерних элементов. |
17 | $("div[p]") Выбирает все элементы, соответствующие <div>, которые содержат элемент, соответствующий <p>. |
18 | $("p[.myclass]") Выбирает все элементы, соответствующие <p>, которые содержат элемент с классом myclass . |
19 | $("a[@rel]") Выбирает все элементы, соответствующие <a>, которые имеют атрибут rel. |
20 | $("input[@name = myname]") Выбирает все элементы, соответствующие <input>, у которых значение имени точно равно myname. |
21 год | $("input[@name^=myname]") Выбирает все элементы, соответствующие <input>, у которых значение имени начинается с myname . |
22 | $("a[@rel$=self]") Выбирает все элементы, соответствующие <a>, у которых есть relзначение атрибута, оканчивающееся на self . |
23 | $("a[@href*=domain.com]") Выбирает все элементы, соответствующие <a>, которые имеют значение href, содержащее domain.com. |
24 | $("li:even") Выбирает все элементы, соответствующие <li>, которые имеют четное значение индекса. |
25 | $("tr:odd") Выбирает все элементы, соответствующие <tr>, которые имеют нечетное значение индекса. |
26 | $("li:first") Выбирает первый элемент <li>. |
27 | $("li:last") Выбирает последний элемент <li>. |
28 | $("li:visible") Выбирает все видимые элементы, соответствующие <li>. |
29 | $("li:hidden") Выбирает все скрытые элементы, соответствующие <li>. |
30 | $(":radio") Выбирает все переключатели в форме. |
31 год | $(":checked") Выбирает все флажки в форме. |
32 | $(":input") Выбирает только элементы формы (ввод, выбор, текстовое поле, кнопка). |
33 | $(":text") Выбирает только текстовые элементы (input [type = text]). |
34 | $("li:eq(2)") Выбирает третий элемент <li>. |
35 год | $("li:eq(4)") Выбирает пятый элемент <li>. |
36 | $("li:lt(2)") Выбирает все элементы, совпадающие с элементом <li> перед третьим; другими словами, первые два элемента <li>. |
37 | $("p:lt(3)") выбирает все элементы, которым соответствуют элементы <p> перед четвертым; другими словами, первые три элемента <p>. |
38 | $("li:gt(1)") Выбирает все элементы, соответствующие <li> после второго. |
39 | $("p:gt(2)") Выбирает все элементы, соответствующие <p> после третьего. |
40 | $("div/p") Выбирает все элементы, соответствующие <p>, которые являются дочерними элементами элемента, соответствующего <div>. |
41 год | $("div//code") Выбирает все элементы, соответствующие <code>, которые являются потомками элемента, соответствующего <div>. |
42 | $("//p//a") Выбирает все элементы, соответствующие <a>, которые являются потомками элемента, соответствующего <p> |
43 | $("li:first-child") Выбирает все элементы, соответствующие <li>, которые являются первым дочерним элементом своего родителя. |
44 | $("li:last-child") Выбирает все элементы, соответствующие <li>, которые являются последними дочерними элементами своего родителя. |
45 | $(":parent") Выбирает все элементы, которые являются родительскими для другого элемента, включая текст. |
46 | $("li:contains(second)") Выбирает все элементы, соответствующие <li>, которые содержат второй текст. |
Вы можете использовать все перечисленные выше селекторы с любым элементом HTML / XML обычным образом. Например, если селектор$("li:first") работает для элемента <li>, тогда $("p:first") также будет работать для элемента <p>.