位置: 编程技术 - 正文

<script defer> defer 是什么意思

编辑:rootadmin
程序下载完后再进行解析和执行。 文档上说defer中的代码不立即执行,页面会继续载入,那defer中的代码具体在什么时候执行呢?在全部javascript代码载入之后?页面载入之后?onload之前还是之后? 答案是: 并不是说在网页载入时不执行,可以在网页写一个SCRIPT.然后定义它,但是在载入时它还是执行了, 后来在找其它的东东时发现,因为它不有个子, 不知它是如何用, 原来它是在你的网页已截入完成后,你想动态添加一个新的<script>时用的,如果你只是object.innerHTML = "<script" + ">"..."</script" + ">"; 那么当你调用你这个新定义的东东就会出错,说还未定义,当你在上面的代码加入defer时那么你就能成功调用它, 在下面的代码中你可以试下把它去掉, defer>";,那么你就会发现问题! <HTML> <SCRIPT> function insertScript(){ var sHTML="<input type=button onclick=" + "go2()" + " value='Click Me'><BR>"; var sScript="<SCRIPT defer>"; sScript = sScript + "function go2(){ alert('Hello from inserted script.') }"; sScript = sScript + "</SCRIPT" + ">"; ScriptDiv.innerHTML = sHTML + sScript; } </SCRIPT> <BODY onload="insertScript();"> <DIV ID="ScriptDiv"></DIV> </BODY> </HTML> //defer属性指示该段脚本不会改变文档的内容。在文档完全显示之前,js解释器不执行这段代码。 具体到这个例子,因为js不允许动态生成js代码,所以去掉defer后产生的代码会被认为是非法的。加上defer后的代码,会被解释器认为是载入页面的时候跳过去的,可以执行。 <script src="../js/script.js" defer></script> 中的defer作用是文档加载完毕了再执行脚本,这样回避免找不到对象的问题 <button id="myButton" onclick="alert('ok')">test</button> <script> myButton.click(); </script> <script> myButton.click(); </script> <button id="myButton" onclick="alert('ok')">test</button> <script defer> function document.body.onload() { alert(document.body.offsetHeight); } </script> 加上 defer 等于在页面完全在入后再执行,相当于 window.onload ,但应用上比 window.onload 更灵活! defer是脚本程序强大功能中的一个“无名英雄”。它告诉浏览器Script段包含了无需立即执行的代码,并且,与SRC属性联合使用,它还可以使这些脚本在后台被下载,前台的内容则正常显示给用户。 --但是 文档加载完毕了再执行脚本 最后请注意两点: 1、不要在defer型的脚本程序段中调用document.write命令,因为document.write将产生直接输出效果。 2、而且,不要在defer型脚本程序段中包括任何立即执行脚本要使用的全局变量或者函数。 一个常用的优化性能的方法是:当脚本不需要立即运行时,在<SCRIPT>标签中设置“defer”属性。 (立即脚本没有被包含在一个function块中,因此会在加载过程中执行。) 设置“defer”属性后,IE就不必等待该脚本装载和执行完毕。这样页面加载会更快。一般来说,这也表明立即脚本最好放在function块中,并在document或者body对象的onload 句柄中处理该函数。在有一些脚本需要依赖用户操作而执行时----例如点击按钮,或者移动鼠标到某个区域----使用该属性非常有用。但当有一些脚本需要在页面加载过程中或加载完成后执行,使用defer属性得到的好处就不太大。

推荐整理分享&lt;script defer&gt; defer 是什么意思,希望有所帮助,仅作参考,欢迎阅读内容。

&lt;script defer&gt; defer 是什么意思

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

DOM下的节点属性和操作小结 属性:1.nodeName节点名称,相当于tagName.属性节点返回属性名,文本节点返回#text。nodeName,是只读的。2.nodeType值:1,元素节点;2,属性节点;3,文本节

JS backgroundImage控制 functionchangeBgImage(obj){obj.style.cssText="background:url('2.gif')no-repeat";}

W3C Group的JavaScript1.8 新特性介绍 JavaScript1.8计划作为Gecko1.9(将要合并在Firefox3中)的一部分开始使用的。比起JavaScript1.7来说,这只是很小的更新,不过它也确实包含了一些向ECMAScript4/JavaSc

标签: &lt;script defer&gt; defer 是什么意思

本文链接地址:https://www.jiuchutong.com/biancheng/382945.html 转载请保留说明!

上一篇:js 数组操作代码集锦(js数组entries)

下一篇:DOM下的节点属性和操作小结(dom操作中获取节点的方法有哪几种)

  • 民办非企业所得税优惠政策
  • 税法规定的增值税
  • 一般纳税人金税盘全额抵扣分录
  • 未达起征点销售额和小微企业免税销售额
  • 农产品收购发票可以跨区域开吗
  • 公司购买汽车可以抵扣吗
  • 2021年停车费税率
  • 企业所得税季报可以更正吗
  • 收到客户银行按时到账
  • 财产租赁所得个人所得税计算方法2020
  • 管理咨询公司需要什么条件才能开发票
  • 外贸企业出出口退税会计科目怎么做账?
  • 企业出售房屋交什么税
  • 学校有没有纳税人识别号
  • 内退人员工资标准
  • 收到汽车保险赔款怎么做账
  • 营改增后小规模纳税人如何报税
  • 产品调试费计入什么科目
  • 农副产品免税怎么报税
  • 如何理解增值税的三种类型?它们的区别是什么?
  • 软件开发公司研发主管绩效考核
  • 备抵法计提坏账准备的公式
  • 货物出库的会计分录
  • windows11怎么设置壁纸
  • 债权债务重组公司
  • imac夜间模式
  • imac 5k屏幕参数
  • PHP:mb_convert_kana()的用法_mbstring函数
  • 农村自建房买卖怎样才合法
  • 同业代付会计分录
  • 买发票前金税盘需要抄税和清卡吗?
  • yolov5超参数进化
  • 物业水电费可以差额征税吗
  • 2021前端热门技术解读
  • userpasswords
  • MySQL分表和分区最佳攻略
  • php和mysql的软件怎么部署
  • 外贸企业出口货物增值税的计算依据
  • 社保清算是怎么回事
  • 律师事务所执业证
  • 保险费支出是什么意思
  • 样品开发计划
  • 企业分配的股票股利宣告发放
  • 公司收取的门禁费用
  • 建筑劳务公司何去何从
  • 费用发票处理
  • 交易性金融资产包括哪些项目
  • 如何区分生产类型
  • 暂估成本发票来了怎么做分录
  • 汇兑损益方式为外币结清怎么操作
  • 收款预缴增值税怎么做账
  • 实际上缴税费总额怎么算
  • 公司注销项目怎么办
  • 技术研发费用是什么意思
  • 招聘一年以内
  • 股东退股如何清算
  • mysql批量删除数据库死锁
  • mysql5.7压缩包
  • Windows下System Volume Information文件夹是干嘛用的?
  • windows7如何获得正版
  • windowxp操作系统
  • linux交换空间的作用
  • Mac如何开启sip
  • geom是什么文件
  • 电脑审核策略更改是什么意思
  • win1020h2无法重启
  • win10极限模式
  • 微软股票
  • linux ssh key登录
  • mvp设计方案
  • apk防止反编译
  • 环境篇作文
  • node.js做服务器
  • python多进程数量限制
  • unity networking
  • 浙江个体户开票软件
  • 国税和地税分别交什么税
  • 国税局登录密码修改
  • 开发商卖商铺需要哪些资质条件?
  • 尤溪特产春节礼品
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设