如何使用AJAX为HTML5和CSS3编程创建初始化函数

时间:2020-02-23 14:46:01  来源:igfitidea点击:

许多HTML5和CSS3页面需要初始化函数。
身体onload机制经常用于DOM/JavaScript,以便在文档开始加载时立即进行页面加载。
这是一个早期运行的函数,以设置页面的其余部分。
虽然身体onload做得很好,但传统技术存在几个问题:

  • 它需要更改HTML。 JavaScript代码应完全与HTML分开。我们不必更改HTML以使其与JavaScript合作。

  • 时间仍然不太正确。在将显示整个页面之后,在显示身体onload中指定的代码不会执行。如果在将DOM加载之后但在页面显示之前,则会更好。

如何使用$(document).ready()

jquery对身体替代的替代方案克服了这些缺点。
看看代码,以查看它是如何工作的:

<!DOCTYPE html>
<html lang = "en-US">
<head>
 <title>ready.html</title>
 <script type = "text/javascript"
   src = "jquery-1.10.2.min.js"></script>
 <script type = "text/javascript">
 $(document).ready(changeMe);
 function changeMe(){
  $("#output").html("I changed");
 }
 </script>
</head>
<body>
 <h1>Using the document.ready mechanism</h1>
 <div id = "output">
  Did this change?
 </div>
</body>
</html>

此代码使用jQuery技术进行初始化代码:

  • 身体标签不再具有onload属性。这是jQuery编程的一个共同点。 HTML不再具有与JavaScript的直接链接,因为jQuery允许JavaScript代码将自身添加到网页。

  • 使用$(文档).ready()函数创建初始化函数。此技术告诉浏览器在DOM完成加载时执行函数(使其可以访问表单的所有元素),但在显示页面之前(使表单的任何效果显示给用户瞬间出现)。

  • $Document从整个文档中发出jQuery对象。可以通过在$()函数中指定文档来将整个文档转换为jQuery对象。请注意,在这种情况下,不使用引号。

  • 指定的函数自动运行。在此特殊情况下,我们希望运行长期()函数,因此我们将其放在Ready()方法的参数中。请注意,这将Changeme引导为变量,因此它没有引号或者括号。

我们可以看到其他几个地方(特别是在事件处理中),其中jQuery期望函数作为参数。
这种函数经常被称为回调函数,因为它在发生某种事件后调用。
我们还会看到回调函数响应键盘事件,鼠标运动和Ajax请求的完成。

document.ready.ready的替代方案

我们有时会看到几个快捷方式,因为它是运行初始化代码的共同点。
你可以缩短

$(document).ready(changeMe);

到以下代码:

$(changeMe);

如果未在函数内定义此代码,并且长期是页面上定义的函数,则jQuery会像Document.ready方法一样自动运行该函数。

我们还可以直接创建匿名函数:

$(document).ready(function(){
  $("#output").html("I changed");
 });

这(匿名函数)方法是麻烦的,但我们经常使用此技术看到jQuery代码。
我们可以创建一个名为init()的函数,并使用这样的行调用它:

$(init);

这种技术简单易于理解,但我们可能会遇到在Web上检查代码的其他变体。