Помогите с некоторыми jQuery в цикле Wordpress - PullRequest
2 голосов
/ 14 августа 2010

Я делаю пользовательскую страницу архива, которая будет отображать список сообщений с их выдержкой и кнопку, при нажатии которой переключается остальная часть содержимого сообщения. У меня он работает с этим кодом, за исключением того, что он переключает КАЖДЫЙ пост контент lol, потому что в цикле все они получают класс, который вы понимаете, о чем я?

Можете ли вы помочь мне найти способ сделать это? Должен быть способ заставить это работать в цикле правильно? Вот код (сбой), который у меня есть, Спасибо! `

<div id="more_content">
    <a href="#" class="see_all">More</a>
    <div class="content_hidden" style="display:none;">
        <div class="copy">
        <?php the_content(); ?>
        </div>

        <p class="tags"><?php the_tags(); ?></p>
        <?php comments_template(); ?>
    </div>
</div>

<script type="text/javascript" charset="utf-8">

$('.see_all').click(function() {

if ( $(this).html() == 'More'){
    $('.content_hidden').toggle('slow');

    $(this).html('Less');



}
else if ( $(this).html() == 'Less'){

    $('.content_hidden').slideUp('slow');
    $(this).html('More');

}

return false;

});

`

Ответы [ 2 ]

2 голосов
/ 14 августа 2010

Это должно работать:

$('.see_all').click(function() {
    if ( $(this).html() == 'More'){
        $(this).parent().find('.content_hidden').toggle('slow');
        $(this).html('Less');
    } else if ( $(this).html() == 'Less'){
        $(this).parent().find('.content_hidden').slideUp('slow');
        $(this).html('More');
    }        
    return false;
});

Цитирую вас:

переключает КАЖДЫЙ контент потому что в цикле все они получают класс вы знаете, что я имею в виду

Вам необходимо указать .content-hidden в пределах или относительно каждого контейнера по нажатой ссылке , в отличие от одновременного обращения ко всем из них. Кроме того, возможно, что вы повторяете идентификаторы в вашем документе (что плохо, запрещено, запрещено, запрещено, недопустимо, не соответствует спецификации, не будет работать и т. Д.). Таким образом, ваш <div id="more_content"> должен быть вместо этого <div class="more_content">

0 голосов
/ 14 августа 2010

Использование

<?php the_ID(); ?> 

для установки HTML-идентификатора элемента, а затем Javascript для выбора идентификатора контейнера, который вы хотите открыть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...