我在页面上显示大量的div,可以是1-50,所有都将生成并通过PHP加载到HTML中,但我想最初只显示9,然后再加载9单击按钮直到全部加载。
var alldivs = $('.preview-container').hide();
$('button').on('click', function(){
var turn = alldivs.splice(0, 9);
if (turn.length) {
console.log(turn);
turn.fadeIn();
}
});
答案 0 :(得分:1)
这是我能想到的最短代码:
var alldivs = $('div'); // select the elements you want to show here
$('button').on('click', function(){
var turn = alldivs.splice(0, 9);
if (turn.length) {
turn.fadeIn();
}
});
当jQuery-selector返回一个包含匹配元素的数组时,您可以将其与Array splice method组合以执行您想要的操作。
基本上alldivs.splice(0, 9)
从alldivs
删除从零位开始的九个项目,并返回已删除的项目。
希望它有所帮助。
答案 1 :(得分:1)
你的问题很模糊。为了更好地参考,您需要发布当前代码,到目前为止您需要做什么以及您搜索的内容。所以它可以帮助您获得更好的答案。但很可能你正在寻找这样的东西:
$('li').click(function() {
var which = $(this).index();
$('div').find('div').hide().eq(which).show();
});