javascript在paginate的div中通过li循环
下面是我正在使用的代码。顶部部分javascript在paginate的div中通过li循环,javascript,jquery,Javascript,Jquery,下面是我正在使用的代码。顶部部分$('div.pagination…工作正常,我可以警报(长度)并且它在分页部分为我提供了正确的页面值。底部部分似乎不起作用。这适用于将在论坛上打开每个页面的刮板。如果我不使用循环,它将成功地重新获取页面的url。长度-=2将从总计数中删除下一个/上一个li $('div.pagination').each(function() { var length = $(this).find('li').length; length -= 2; });
$('div.pagination…
工作正常,我可以警报(长度)
并且它在分页部分为我提供了正确的页面值。底部部分似乎不起作用。这适用于将在论坛上打开每个页面的刮板。如果我不使用循环,它将成功地重新获取页面的url。长度-=2
将从总计数中删除下一个/上一个li
$('div.pagination').each(function() {
var length = $(this).find('li').length;
length -= 2;
});
for (var i = 0; var <= length; i++) {
var pageToOpen = 'http://someWebsite.com/index/page:' + i;
alert(pageToOpen);
page.open(pageToOpen, function (status) {
if (status == 'success') {
logAuctions();
}
}});
}
$('div.pagination')。每个(函数(){
var length=$(this.find('li').length;
长度-=2;
});
对于(var i=0;var定义var长度
在之外(之前)。each()
使用.lentgh
方法,您可能会错过真正的页面索引。因此,我建议抓住真正的锚href
s
var页面=[];
//跳过“下一个”和“最后一个”得到所有的ahchor
$('div.pagination li')。切片(0,-2)。查找('a')。每个(函数(){
pages.push($(this.attr('href'));
});
$。每个(页面、功能(i、v){
$(''+ ("http://someWebsite.com“+v)+”)。附加到(“#输出”);
});
/*将导致:
http://someWebsite.com/auctions/index/page:2
http://someWebsite.com/auctions/index/page:3
http://someWebsite.com/auctions/index/page:4
*/
在for循环中:for(var i=0;我不理解您,length
以及使用它得到的所有数字,可能不是您需要的实际的../page:Number
页面。您在忙什么?为什么不var length=$('div.pagination li')).length-2;
所以我的问题是长度是在函数中定义的,在循环中不可访问?在这种情况下,您也可以考虑$.map?@user2007924。确切地说,我编辑了我的答案,但如果它不符合标准,我可以随时回滚。
var pages = [];
// skipping the "Next" and "Last" get all A ahchors
$('div.pagination li').slice(0,-2).find('a').each(function(){
pages.push( $(this).attr('href') );
});
$.each(pages, function(i, v){
$('<div>'+ ("http://someWebsite.com"+v) +'</div>').appendTo('#output');
});
/* WILL RESULT IN:
http://someWebsite.com/auctions/index/page:2
http://someWebsite.com/auctions/index/page:3
http://someWebsite.com/auctions/index/page:4
*/