为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

慕虎7371278 2019-07-19 18:49:06
何时使用jQuery的document.readly函数?当我第一次开始使用Javascript/jQuery时,有人告诉我要使用document.准备,但我从未真正了解为什么。也许有人会提供一些基本的指导方针,说明何时将javascript/jQuery代码封装到jQuery中是有意义的。document.ready?一些我感兴趣的话题:jQuery.on()方法:我使用.on()方法用于Ajax(通常用于动态创建的DOM元素)。如果.on()单击处理程序总成内 document.ready?性能:保留各种javascript/jQuery对象是否更符合性能?内或外准备好(同时,性能差异是否显著?)对象范围:加载Ajax的页面无法访问内上一页的文件准备好了,对吧?它们只能访问外文档准备好了(即真正的“全局”对象)?最新情况:要遵循最佳实践,我的所有javascript(jQuery库和我的应用程序代码)都在底部我的HTML页面,我使用defer属性设置在加载Ajax的页面上包含jQuery的脚本上,这样我就可以在这些页面上访问jQuery库。
查看完整描述

3 回答

?
萧十郎

TA贡献1815条经验 获得超12个赞

回答:

jQuery的.on()方法:我对Ajax使用了.on()方法(动态创建DOM元素)。.on()单击处理程序是否应该总是在document.备妥内?

不,不总是这样。如果在文档头中加载JS,则需要加载JS。如果要在页面通过Ajax加载之后创建元素,则需要这样做。如果脚本位于html元素下面,则不需要添加处理程序。

性能:将各种javascript/jQuery对象保存在document.现成的内部或外部(另外,性能差异很大吗?)

那得看情况。附加处理程序将花费同样的时间,这仅仅取决于您是否希望在页面加载时立即发生这种情况,或者希望它等待直到加载整个文档。因此,这将取决于您在页面上做的其他事情。

对象范围:Ajax加载的页面无法访问上一页文档中的对象。准备好了,对吗?它们只能访问文档之外的对象。就绪(即真正的“全局”对象)?

它本质上是它自己的函数,因此它只能访问在全局范围(外部/最重要的是所有函数)中声明的VAR,或者使用window.myvarname = '';


查看完整回答
反对 回复 2019-07-19
?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

在安全使用jQuery之前,需要确保页面处于准备好的被操纵。使用jQuery,我们通过将代码放入函数中,然后将该函数传递给$(document).ready()..我们传递的函数可以是匿名函数.

$(document).ready(function() {  
    console.log('ready!');  });

一旦文档准备就绪,这将运行我们传递给.ready()的函数。这里发生了什么事?我们使用$(Document)从页面的文档创建jQuery对象,然后调用该对象上的.ready()函数,将我们要执行的函数传递给它。

由于您会发现自己做了很多事情,所以如果您愿意的话,这里有一个简化的方法-如果您传递一个函数,$()函数会作为$(Document).ready()的别名执行双重任务:

$(function() {  
    console.log('ready!');  });


查看完整回答
反对 回复 2019-07-19
  • 3 回答
  • 0 关注
  • 544 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信