Как я могу выбрать этот элемент с помощью 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.

$('#read-more') will do the trick

Что ж, выбрать элемент по id довольно просто.

$("#read-more")

Будет делать это независимо от того, где вы находитесь, потому что идентификаторы являются глобальными.

Это всегда будет работать:

$("#read-more");

Учитывая, что структура всегда будет выглядеть так:

var theSpan = $(this).parent().parent().find('#read-more');
Другие вопросы по тегам