Я немного изменил этот скрипт для своих нужд, но теперь я столкнулся с проблемой, для которой не могу найти решение.
HTML:
<div class="toggle">
<p>Grumpy wizards make toxic brew for the evil Queen and Jack.</p>
</div><!-- end .toggle -->
<div class="readMoreDiv"> </div><!-- end .readMoreDiv -->
<div class="toggle">
<p>Grumpy wizards make toxic brew for the evil Queen and Jack.</p>
</div><!-- end .toggle -->
<div class="readMoreDiv"> </div><!-- end .readMoreDiv -->
Сценарий:
$(document).ready(function() {
// Andy Langton's show/hide/mini-accordion - updated 23/11/2009
// Latest version @ http://andylangton.co.uk/jquery-show-hide
var showText='down';
var hideText='up';
// initialise the visibility check
var is_visible = false;
// insert Show/hide links in the readMoreDiv
$('.toggle').next('.readMoreDiv').html('<a href="#" class="toggleLink">'+showText+'</a>');
// hide all of the elements with a class of 'toggle'
$('.toggle').hide();
// capture clicks on the toggle links
$('a.toggleLink').click(function() {
// switch visibility
is_visible = !is_visible;
// change the link depending on whether the element is shown or hidden
$(this).html( (!is_visible) ? showText : hideText);
// toggle the display
$(this).parent().prev('.toggle').slideToggle();
return false;
});
});
Смотрите это в действии здесь: http://jsfiddle.net/CeBEh/
Как вы можете видеть на Fiddle, скрипт работает хорошо, когда вы открываете и закрываете только один div. Но как только вы начинаете открывать и закрывать второй div, пока первый еще открыт, начинаются проблемы ...
Я просто хотел бы, чтобы он работал постоянно, независимо от того, открыт ли в данный момент ни один или все div.
Спасибо!