Необходимо отыскать все элементы, внутри которых находится текст, содержащий подстроку ‘John’.

Опубликовал: Пятница, Июнь 7, 2013 в категории jQuery, Подборка рецептов | Пока нет комментариев

Решение

Для решения задачи используем фильтр :contains (листинг 1.4.1).

Листинг1 .4 .1 . Использование фильтра :contains

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ru" xml:lang="ru">
<head>
<title>example-1-4-1</title>
<content>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="js/jquery-1.5.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function(){
$("div:contains('John')").css("text-decoration", "underline");
});
</script>
</head>
<body>
John Resig
George Martin
Malcom John Sinclair
J. Ohn
b byJohns a
</body>
</html>

Обсуждение

Рассмотрим пример кода, приведенный в листинге 1.4.1. Имеются пять элементов div, внутри которых находится некоторый текст. Чтобы отыскать только те элементы div, текст внутри которых содержит подстроку ‘John’, указываем в селекторе выражение div:contains(‘John’), выбирая нужные нам элементы. Для наглядности делаем текст внутри этих элементов подчеркнутым с помощью изменения CSSсвойства text-decoration.

Источник: Самков Г. А. jQuery. Сборник рецептов. — 2-е изд., перераб. и доп. — СПб.: БХВ-Петербург, 2011. — 416 с.: ил. + CD-ROM — (Профессиональное программирование)

Похожие посты:

Комментировать

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>