我的JQ代码存在一些问题。
默认我必须只显示我的UL列表中的4个元素。但如果我点击“显示更多”元素,我必须在UL列表中显示+4个(+4)个元素。
有人知道我该怎么做吗?
抱歉我的英语不好:(
这是我的代码:
$(document).ready(function() {
$('ul#Galeria > li:gt(3)').css( "display", "none" );
$( ".readmore > a" ).click(function() {
$("ul#Galeria > li:gt(3)").fadeIn("slow").show();
$(".readmore").css('display', 'none');
return false;
});
});
答案 0 :(得分:2)
var displayCount = -1; // tracks how many are showing
var readMoreIncrement = 4; // number of items to show at each increment
var liTotal = $("ul#Galeria li").length; // total number of items in list
console.log("liTotal: "+liTotal);
readMore();
$(".readmore > a" ).click(readMore);
function readMore () {
displayCount += readMoreIncrement;
console.log("displayCount: "+displayCount);
$('ul#Galeria > li:gt(' + displayCount + ')').css( "display", "none" ); // hides items that are not ready to be shown
$("ul#Galeria > li:lt(" + (displayCount + 1) + ")").fadeIn("slow").show(); // shows the next set of items
if(displayCount >= (liTotal - 1)) $(".readmore").css('display', 'none'); // hides read more link when all items are shown
return false;
}
答案 1 :(得分:0)
你没有在Frameworks&中选择jQuery。扩展菜单。所以这个简单的代码可以工作:
$('ul#Galeria > li:gt(3)').fadeOut(0);
$( ".readmore > a" ).click(function() {
$("ul#Galeria > li:gt(3)").fadeIn("slow");
});