我正在构建一个页面,我想在其中使用 Galleria 脚本 ( http://devkick.com/lab/galleria/ ) 和jQuery的 Accordion 小部件来隐藏不同类别的画廊缩略图。在我的初始化中,我按照两个脚本手册的建议写了:
<script type="text/javascript">
jQuery(function($) {
$('ul.gallery').galleria({
insert: "#image"
});
$("#thumbs").accordion();
});
</script>
该galleria()
函数创建缩略图并为其分配适当的大小。然后,该accordion()
函数分配其样式并折叠当前不可见的元素。使用上面的代码,我遇到了一些缩略图由于尺寸为零而变得不可见的问题。
如果我在为缩略图分配galleria()
功能大小之前发出警报,我可以看到对于手风琴的不可见页面内的图像,它们的容器在那时的尺寸为零。这对我来说很奇怪,因为我认为这些函数是连续执行的,并且在完成accordion()
之前没有被调用galleria()
。
更奇怪的是,如果我在手风琴功能之前放置一个警报,那么一切都会以正确的顺序处理。
很明显,我在这里面临着比赛条件。为什么会发生这种情况,我应该怎么做才能保证有序的初始化序列?