0

我遇到了在完成之间造成的延迟问题:

var href = $('.mainNav').data('href');
$('#slideshow').load(href);   

这会调用一个仅包含未排序列表的文件并将其放置为#slideshow 的内容。那部分在 $(document).ready 函数中。

下一段代码调用插件 jCarousel 来设置 #slideshow 内容的样式,并且位于 $(document).ready 函数之外:

$(window).bind('load', function () {
  $('#mycarousel').jcarousel();
});

我遇到的问题是,在加载列表和格式化完全没有样式的列表之间存在轻微延迟。有没有办法让第二段代码在列表本身显示之前运行?

4

1 回答 1

0

你可以用 CSS 隐藏它:

#mycarousel {
  display: none;
}

然后在设置 jcarousel 后显示它:

$(window).bind('load', function () {
  $('#mycarousel').jcarousel();
  $('#mycarousel').show();
});

另外,我认为您使用$(window).bind('load', ...)with很奇怪.load(),因为.load()不会在window. 也许你应该使用回调.load()来做类似的事情:

$('#slideshow').load(href, function () {
  $('#mycarousel').jcarousel();
  $('#mycarousel').show();
});
于 2012-08-08T02:17:00.033 回答