【发布时间】:2013-01-06 23:17:19
【问题描述】:
我有以下功能运行正常,除了一件事。它首先附加的内容没有任何后果。
(function biograf(){
var placeholder = $('#top-imageholder');
$('ul#biomenu > li').each(function(){
var obj = $(this);
var pageLink = obj.find('a:first').attr('href');
$.get(pageLink, function(data) {
placeholder.append( $(data).find('#top-imageholder').html() );
placeholder.append( $(data).find('#top-imageholder').siblings('ul') );
});
});
})();
我希望该函数按照我的列表项在#biomenu 中的放置顺序附加占位符。
90% 的时间它都会这样做,但偶尔会以不同的顺序附加。
有什么建议吗?
【问题讨论】:
-
你在任何地方都使用
setTimeout吗? -
您可能想重新命名这个问题。没有超时,而是异步
.get()。订单被异步性打败了。 -
您应该考虑将所有页面链接捆绑到一个请求中,并让服务器组成整个响应。这将解决问题并避免大量近乎同时的请求轰炸服务器。
-
我知道代码中没有超时,我写它可能会让人困惑,但我的意思是可以在函数中设置超时来解决问题.
标签: jquery get settimeout each