jquery选项卡应该在document.ready中吗?

时间:2009-07-01 15:20:48

标签: jquery

我对于document.ready究竟是什么感到有点困惑。根据john resig的tutorial,document.ready应该包含在页面加载完成时需要运行的代码。

如果我有代码声明制表符或代码将斑马条纹放在表格上怎么办?

是不是应该在document.ready之下?不会有用户首先看到加载内容然后看到斑马高光和标签加载的情况吗?

5 个答案:

答案 0 :(得分:1)

非常好点..但问题是如果在加载影响的内容之前运行斑马条纹代码会是什么?有瑕疵。

可以在你的内容中撒上你的JS,这样它上面的内容当然会在它运行之前被加载......但是这个JS需要加载所需的jquery库吗?现在还有更多可能出错的地方。

另请注意,jquery Ready事件仍将在经典document.onLoad事件之前运行。 (等待图像完成加载)

答案 1 :(得分:1)

当然,您可以随时使用经典的javascript来处理像斑马条纹这样的简单事物,而jQuery则可以用于更困难的事情。

答案 2 :(得分:0)

通常,如果它影响DOM中的任何内容,则应将其放在document.ready内。所以是的,你的标签和斑马条应该去那里。

答案 3 :(得分:0)

您应该在onDOMReady函数中放置jQuery选项卡的代码。为了安全起见,请使用jQuery提供的功能:

$(function(){
    //put your tab / zebra stripes code here
});

通过使用此功能,您可以确保在DOM准备好进行修改时运行必要的代码(但页面本身可能没有完全加载)。在document.ready上加载的其他代码也可能在此函数中更好,因为使用document.ready可能会导致用户在加载动态JavaScript时在屏幕上看到闪烁。

答案 4 :(得分:0)

当DOM被完全加载时,就会触发ready事件,而加载DOM时会触发加载事件+也会下载DOM引用的所有图像。

这意味着除非您的初始化代码使用来自DOM的图像,否则您应该使用ready事件。 See this page例如,如果您尝试在load事件中访问DOM中的图像,会发生什么。