Javascript / jQuery不会在IE中执行,直到页面正文被覆盖

时间:2009-04-07 00:40:08

标签: javascript jquery internet-explorer

我正在http://www.nitrohandsome.com开发一个新的投资组合网站,并且正在利用这些经验来减少对jQuery的关注。我正在使用最新版本和jcarouselite以及主页上的缓动扩展,以获得漂亮的旋转木马效果。它在大多数浏览器中运行良好,但是当我开始在IE中进行测试时(7和8,还没有开始针对6.5进行优化)我发现jQuery在加载文档后不会立即执行代码。相反,似乎要等到鼠标移动到html本身。这导致我的轮播显示像列表和我的主菜单按钮,直到用户移动鼠标才能正确呈现。我用browsershots.org检查它是否只发生在我的机器上,但遗憾的是没有。任何人都可以为我阐明这一点吗?我是jQuery的新手,虽然我对其他ECMA语言(如Actionscript)非常熟悉,但我对javascript一般只有一点经验。

我会发布源代码,但帖子的实时预览显示它会尝试呈现HTML。

提前致谢。

1 个答案:

答案 0 :(得分:11)

您的代码中有一个额外的逗号。检查它是这样的:

{
 param: "whatever",
 param2: "whatever", // <- extra comma!
}

IE就死了,而Firefox却没有。

编辑:这是额外的逗号:

$("#carousel").jCarouselLite({
    btnNext: "#next",
    btnPrev: "#prev",
    visible: 3,
    easing: "easeout",
    speed: 150, // <- REMOVE THIS COMMA
});

第二次编辑:

为了以后找到此页面的任何人,他的页面显示不正确的原因是因为jQuery的1.3.1 documented problems带有document.ready在图像之后触发或不在所有。修复了最新的jQuery版本就可以了。