У меня есть большой список предметов, который я хотел скрыть, и тогда кнопка с именем #more высеет еще 5.До сих пор я мог показать больше, но когда я показываю меньше с помощью кнопки #less, скрипт застрял.
следующий мой код и скрипка тоже
HTML
<a href="#" id="more">more</a>
<a href="#" id="less">less</a>
<ul>
<li>1</li>
<li>2</li>
...
<li>3</li>
</ul>
jQuery
jQuery(function($) {
var visible = 7;
$('ul li:gt('+(visible - 1)+')').hide();
$('#more').click(function() {
if ($('ul li:visible:last').is(':last-child')) {
return false;
}
var currentIndex = $('ul').children('li:visible:last').index(),
nextIndex = currentIndex + (visible + 1);
$('ul li').hide();
$('ul li:lt(' + nextIndex + '):gt(' + currentIndex + ')').show();
});
$('#less').click(function() {
if ($('ul li:visible:first').is(':first-child')) {
return false;
}
var currentIndex = $('ul').children('li:visible:first').index();
var prevIndex = (currentIndex - (visible + 1));
$('ul li').hide();
if(prevIndex == 0)
$('ul li:lt(' + currentIndex + ')').show();
else
$('ul li:lt(' + currentIndex + '):gt(' + prevIndex + ')').show();
});
});