每次执行jquery时是否必须编写ready函数?

时间:2011-01-17 06:17:55

标签: asp.net jquery

每次都必须写$(document).ready(function () {... })吗? 没有这条线,我们不能这样做吗?

6 个答案:

答案 0 :(得分:1)

$(document).ready确保您的代码在文档准备好(即完全加载)时运行。如果您不需要与文档交互,则不需要此操作。如果你把Javascript放在文档的末尾,你可能也不需要它。您将您的代码放入function () { },但要以任何方式命名。

答案 1 :(得分:1)

将代码放在此函数中的原因是,一旦DOM加载,它就会被调用 - 这意味着所有元素都是可访问的。调用没有此函数的jQuery选择器意味着元素不一定被加载到DOM中并且可能无法访问(并且您将看到奇怪的结果或者根本没有看到代码)。

所以在本能中,是的,这是必要的。

答案 2 :(得分:0)

$(document).ready表示在所有文档准备好(加载)后,将执行此框中的代码。它被认为是安全的编程,但不是强制性的。

例如,您在脚本标记do_something()中调用函数;并且此函数位于未加载的js文件中,然后您将收到javascript错误。

如果你把这个函数放在这个

$(document).ready(function () {
    do_something();
});

你确保在调用函数时,所有js文件都将存在于服务器中。

答案 3 :(得分:0)

如果您不使用该行,并且只是在您的身体中包含javascript,它将在加载后立即执行。如果它试图对尚未加载的DOM元素进行操作,则会发生不可预测的结果....更安全而不是抱歉。

答案 4 :(得分:0)

jQuery的ready()函数在加载页面内容后运行。这相当于使用<body onload="function1();function2();">

如果要在加载页面时调用多个函数,可以执行以下操作:

$(document).ready(function() {
  function1();
  function2();
});

为了使用javascript,你必须在某个地方调用它。这可以是正文“onload”,jQuery的ready()函数或事件,如鼠标点击事件。

答案 5 :(得分:0)

不,你不必总是这样做。如果要在浏览器中显示页面之前确定就绪函数内部的任何内容,请仅使用它。如果您不想在页面加载之前加载脚本,那么您可以将脚本放在结束体标记之前的页面末尾。

此外,作为$(document).ready(function ()的快捷方式,您可以执行$(function()