В jquery, как я могу ссылаться на div с определенным атрибутом заголовка? - PullRequest
1 голос
/ 13 июля 2010

В jquery, как я могу ссылаться на div с определенным атрибутом заголовка?

$('#inner').attr("title:contains('" + position +"')").css('position', 'absolute');

это не работает для меня, если содержит в нем не работает, как я могу обратиться к div с заголовком ="div1" и изменить его CSS.Еще раз спасибо!

РЕДАКТИРОВАТЬ: у меня есть несколько #inner div, как я могу сослаться на конкретный, если заголовок не будет работать?Должен быть какой-то способ дать этим #inner divам какую-то идентификацию, чтобы я мог вызывать их по отдельности.

Ответы [ 4 ]

6 голосов
/ 13 июля 2010

Если вы ищете div, который является предком #inner и имеет заголовок div1, сделайте следующее:

$('#inner').find('div[title=div1]').css('position','absolute');

РЕДАКТИРОВАТЬ:

Что-то говорит мне, что у вас может быть более одного <div id='inner'>, и вы пытаетесьчтобы получить тот с определенным названием.

Если это так, ваша разметка недействительна.Вы не можете иметь более одного элемента на странице с одинаковым идентификатором.

Вам придется переосмыслить свою стратегию, если это так.


Вот пример использования атрибута class вместо ID и выбора на основе titleатрибут:

HTML

<div class='inner' title='div1'>some content</div>

jQuery

$('.inner[title=div1]').css('position','absolute');

Выберет элемент с классом inner, который имеет заголовок div1.Он использует селектор «атрибут равно».

В jQuery есть много других типов селекторов, которые вы можете использовать.Вот ссылка:

2 голосов
/ 13 июля 2010

Вы хотите использовать .attr('title'), чтобы получить значение атрибута title.

.attr не для выбора элементов, вы не можете передать ему селектор :contains.

1 голос
/ 14 июля 2010

переименуйте ваши div, чтобы они имели уникальный идентификатор, и используйте class = "inner", затем используйте .each для их циклического перемещения или используйте код, аналогичный приведенному выше $ ('. Inner'). Find ('div [title = div1]') .css (' позиция», 'абсолютный');jquery не нравится, когда вы не играете по правилам (несколько элементов с одинаковым «уникальным» идентификатором

0 голосов
/ 13 июля 2010

Чтобы выбрать те с атрибутами заголовка:

$("#inner > *[title!=]").css('position','absolute');
...