(>_<)什么意思?

&script defer& defer 是什么意思
字体:[ ] 类型:转载 时间:
好多朋友不知道 script后面加个defer是什么意思有什么作用。
程序下载完后再进行解析和执行。 文档上说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 + sS } &/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属性得到的好处就不太大。
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具4598人阅读
编程基础(14)
web技术(30)
在浏览器中有很多字符,都是属于保留字符,例如(&),对SGML,HTML,XML来说是有特殊意义的,如果某些Unicode字符在文档的当前编码方式(如ISO-8859-1)中不能直接表示,那么就可以通过字符值引用,这里也称之为实体编号或者字符实体引用,这里也称之为实体符号两种转义序列来表示这些不能直接编码的字符。
实体编号的组成
和号(&)井号(#)编号(数字)封号(;)
实体符号的组成
和号(&)字符(字母)封号(;)
实体名称(Entity)是区分大小写的
同一个符号,可以用“实体名称”和“实体编号”两种方式引用,“实体名称”的优势在于便于记忆,但不能保证所有的浏览器都能顺利识别它,而“实体编号”则没有这种担忧,但它实在不方便记忆。
HTML 4 DTD标准,定义了252个命名实体。HTML 4规范要求使用标准DTD,并且不允许用户定期其它的命名实体.
在XHTML DTD中,明确声明了253个字符实体(包括5个XML 1.0的预定义实体). 除了’实体这个例外,其它252个字符实体与HTML中的252个字符实体引用一致. 每个XHTML文件实例还可以定义任意数目的字符实体。但是XHTML字符实体的可用性受到该文件的处理方式的影响:
如果该文件由HTML处理器来处理, 那么只有252个 HTML字符实体可用。’或用户定义的实体引用可能不被支持,产生不可预测的效果.如果该文件由XML分析器来处理,只有5个XML预定义的字符实体能安全使用, 虽然定义在内部DTD子集中的其它实体也许可用。如果XML分析器能读外部实体,那么除了5个XML预定义的字符实体能安全使用,只要XML分析器能读取XHTML DTD,其它248个HTML字符实体也可以使用。声明在内部DTD子集中的实体也可以使用.
一般来说,在编辑HTML文档时,浏览器会自动删除空格。不管你按空格键,加入多少空格,一部分浏览器处理文档时,都看成一个空格。比如你在两个字符之间加上了10个空格,HTML会截去9个空格,只保留一个。为了在网页中,使用空格这个特殊字符,我们便可以使用实体字符或者是实体编码来转义成空格
在html文档中表示为: 或者是&
由于’不能在HTML处理器中一致的安全使用,实际上仅有”, &, &, and &4个字符实体可以在所有处理环境下通用。所以,尽量使用实体编号来转义字符避免部分字符无法转义。
我根据Dave从官方的整理做了翻译,
附加关键词:& &  &&&;&#;&编码;&#编号;是什么意思什么编码实体符号实体编码实体字符&转义符
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:120423次
积分:1598
积分:1598
排名:第17999名
原创:43篇
转载:37篇
评论:18条
(1)(1)(13)(1)(1)(3)(1)(1)(4)(1)(2)(3)(1)(4)(1)(2)(1)(4)(22)(1)(7)(2)(2)(1)

我要回帖

更多关于 lt gt eq 的文章

 

随机推荐