У меня есть несколько комментариев на сайте в зависимости от поста, и я хочу только показать / скрыть выбранные комментарии. У меня есть эта проблема и пытаюсь выяснить. Когда я нажимаю на одну опцию, показ / скрытие работает нормально, но это также скрытие или отображение на любом другом содержимом НИЖЕ. Я хочу, чтобы триггер мог показывать / скрывать ТОЛЬКО один комментарий, на который нажали.
Кто-нибудь, как заставить slideToggle () работать таким образом?
Вот текущий код:
jQuery(document).ready(function()
{
// Slides container Up and Down on click
jQuery('div.toggle').click(function(event) {
// Get the ID by removing the '-'
$getID = event.target.id.split('-');
// Get the right content
$getContent = jQuery("div#content").parent().find("#"+$getID[1]);
// Check if content exist
if ($getContent.length > 0)
$getContent.slideToggle('slow');
});
});
** ЗДЕСЬ есть HTML-код:
На самом деле они в цикле.
<?php while (have_posts()) : the_post(); ?>
<div class="toggle">
<ul id="nav">
<li><a href="javascript:;" id="option-view">View Comments /a></li>
...
</ul>
</div>
<div id="content">
<div id="view"><?php $withcomments = 1; comments_template(); ?></div>
</div>
<div id="add"> Add a COMMENT here!! </div>
<?php endwhile; ?>
*** Наконец, это работает, потратив почти целый день, чтобы выяснить, КАК с пробами и ошибками. Вот код:
<div class="toggle">
<ul id="nav">
<li><a href="javascript:;" class="option-view" id="option-view">View Comments</a></li>
<li><a href="javascript:;" class="option-add" id="option-add">Add Comments</a></li>
</ul>
<div class="content">
<div id="view">.......VIEW a comment</div>
<div id="add">......Add a COMMENT here!!</div>
</div>
</div>
*** JS код:
jQuery(document).ready(function()
{
jQuery('.toggle').bind("click", function(event) {
$getID = event.target.id.split('-');
//alert($getID)
jQuery(this).parent().find("#"+$getID[1]).slideToggle('slow');
return false;
});
});
Спасибо Half-Dead за помощь в выборе правильного пути ...