Как я могу выбрать этот элемент с помощью Jquery?
В приведенном ниже коде, как я могу выбрать элемент span с id="read-more", если я в элементе привязки с id="preface-more-btn", используя $(this) (применяется для более чем одной кнопки) в jquery?
<pre>
<div id="content">
<p>
<span style="font-size: 16px;"></span>
</p>
<span id="read-more" style="display: none;"></span>
<div class="more active" id="preface-more">
<a class="btn-more" id="preface-more-btn" href="#"></a>
</div>
</div>
</pre>
Спасибо за помощь..
6 ответов
var selector = $('#read-more');
Он уникален во всем мире, поскольку у него есть идентификатор.
РЕДАКТИРОВАТЬ: Попробуйте
$(this).parent().prev();
Если вы контекстуально внутри элемента с id="reface-more-btn"
Вы можете выбрать его интуитивно, как это:
$(this).parent().parent().find('#read-more');
Если вы ищете удобочитаемость, попробуйте это:
$(this).closest('#read-more');
Но так как id
уникален только для одного элемента, почему вы просто не используете $('#read-more');
?
Вы можете сбить с толку class
а также id
, поскольку только один элемент может иметь определенный id
в то время как многие элементы могут совместно class
, Прочитайте этот вопрос для более подробного объяснения, так как важно знать различия: класс div против id.
Что ж, выбрать элемент по id довольно просто.
$("#read-more")
Будет делать это независимо от того, где вы находитесь, потому что идентификаторы являются глобальными.
Учитывая, что структура всегда будет выглядеть так:
var theSpan = $(this).parent().parent().find('#read-more');