【发布时间】:2014-05-19 14:33:36
【问题描述】:
我有这个 jquery 代码,它从隐藏的 div 加载更多内容,我打开它,一切正常,但我希望它再次关闭,但我不知道该怎么做。 我也想改变 loadmore 打开时关闭...
帮助 html:
<a href="#" id="loadMore">Load More</a>
$(function () {
$("moreinfo").slice(0, 4).show();
$("#loadMore").on('click', function (e) {
e.preventDefault();
$("div:hidden").slice(0, 4).slideDown();
if ($("div:hidden").length == 0) {
$("#load").fadeOut('slow');
}
$('html,body').animate({
scrollTop: $(this).offset().top
}, 1500);
});
});
$(window).scroll(function () {
if ($(this).scrollTop() > 50) {
$('.totop a').fadeIn();
} else {
$('.totop a').fadeOut();
}
});
更新:
$(function () {
$("div").slice(0, 4).show();
$("#loadMore").on('click', function (e) {
e.preventDefault();
$(".moreinfo:hidden").slice(0, 4).slideDown();
});
$(".loadLess").on('click', function (e) {
e.preventDefault();
$(".moreinfo:visible ").slice(0, 4).slideUp();
});
});
这将允许它立即自动打开和关闭...
【问题讨论】:
-
再次,如果您查看我的示例,您会注意到我选择了 .slice(-4) 也就是最后 4 个元素并隐藏它们(slideUp)。实现 loadLess 的方式是立即隐藏和显示 4 个 FIRST 元素。
标签: javascript jquery html css