何时使用jQuery的document.readly函数?

何时使用jQuery的document.readly函数?

当我第一次开始使用Javascript/jQuery时,有人告诉我要使用document.准备,但我从未真正了解为什么。

也许有人会提供一些基本的指导方针,说明何时将javascript/jQuery代码封装到jQuery中是有意义的。document.ready?

一些我感兴趣的话题:

  1. jQuery

    .on()

    方法:我使用

    .on()

    方法用于Ajax(通常用于动态创建的DOM元素)。如果

    .on()

    单击处理程序

     document.ready?

  2. 性能:保留各种javascript/jQuery对象是否更符合性能?

    准备好(同时,性能差异是否显著?)
  3. 对象范围:加载Ajax的页面无法访问

    上一页的文件准备好了,对吧?它们只能访问

    文档准备好了(即真正的“全局”对象)?

最新情况:要遵循最佳实践,我的所有javascript(jQuery库和我的应用程序代码)都在底部我的HTML页面,我使用defer属性设置在加载Ajax的页面上包含jQuery的脚本上,这样我就可以在这些页面上访问jQuery库。


慕虎7371278
浏览 547回答 3
3回答

萧十郎

回答:jQuery的.on()方法:我对Ajax使用了.on()方法(动态创建DOM元素)。.on()单击处理程序是否应该总是在document.备妥内?不,不总是这样。如果在文档头中加载JS,则需要加载JS。如果要在页面通过Ajax加载之后创建元素,则需要这样做。如果脚本位于html元素下面,则不需要添加处理程序。性能:将各种javascript/jQuery对象保存在document.现成的内部或外部(另外,性能差异很大吗?)那得看情况。附加处理程序将花费同样的时间,这仅仅取决于您是否希望在页面加载时立即发生这种情况,或者希望它等待直到加载整个文档。因此,这将取决于您在页面上做的其他事情。对象范围:Ajax加载的页面无法访问上一页文档中的对象。准备好了,对吗?它们只能访问文档之外的对象。就绪(即真正的“全局”对象)?它本质上是它自己的函数,因此它只能访问在全局范围(外部/最重要的是所有函数)中声明的VAR,或者使用window.myvarname = '';

牛魔王的故事

在安全使用jQuery之前,需要确保页面处于准备好的被操纵。使用jQuery,我们通过将代码放入函数中,然后将该函数传递给$(document).ready()..我们传递的函数可以是匿名函数.$(document).ready(function() {       console.log('ready!');  });一旦文档准备就绪,这将运行我们传递给.ready()的函数。这里发生了什么事?我们使用$(Document)从页面的文档创建jQuery对象,然后调用该对象上的.ready()函数,将我们要执行的函数传递给它。由于您会发现自己做了很多事情,所以如果您愿意的话,这里有一个简化的方法-如果您传递一个函数,$()函数会作为$(Document).ready()的别名执行双重任务:$(function() {       console.log('ready!');  });
打开App,查看更多内容
随时随地看视频慕课网APP