JavaScript 学习笔记

来源:互联网 发布:gzip压缩linux 编辑:程序博客网 时间:2024/05/29 03:16

1.Javascript伪协议和void(0)

Javascript伪协议(不是所有浏览器兼容):默认将页面带到一个新的document中并显示程序返回结果,所以正常情况下,运算结果会在一个空的文档对象内显示。而void(0)可以阻止这个跳转行为。如:在浏览器地址栏输入:

JavaScript:alert("HelloWorld");void(0);

void 是 Javascript的一个特殊运算符,它的作用是舍弃任何参数表达式的值,这意味着要求解析器去检验并计算参数表达式内容,但忽略其结果。如果要刻意去检查void运算的返回值,会发现它返回一个undefined值,可以在浏览器console下输入alert(void(0));测试,有点不明白void 运算符中为何要传人0,即void(0)?。事实上,任何一个不带return指令的函数运算的默认返回值都是undefined。在浏览器缺省的行为中,undefined阻止了页面的跳转。


2.async 异步脚本
指定async属性的目的是不让页面等待脚本的下载和执行,从而异步加载页面其它内容。为此,建议异步脚本不要再加载期间修改DOM。异步脚本一定会在页面的load事件前执行,但可能会在DOMContentLoaded事件触发之前或之后执行(?)。


3.XHTML代码规范
@所有的标记都必须要有一个相应的结束标记。例:<p></p> <br />
@所有的标签的元素和属性名字都必须使用小写。例:onMouseOver-->正确:onmouseover
@所有的标记必须合理嵌套。例如:<p><b></p></b> --->正确:<p><b></b></p>
@所有的属性必须用引号“”括起来。例如:<height=80> -->正确:<height="80">
@所有<和&特殊符号用编码表示:例如:&lt 替换< ;  &gt 替换>; &amp 替换&;
@给所有属性赋一个值,没有值的就赋本身的值。
例如: <input type="checkbox" checked/> -->正确: <input type="checkbox" checked="checked"/> 
@不要在注释中使用“-”。例如下面代码是无效的:<!--注释---------注释-->

4.文档模式
@怪异模式或者混杂模式(quirks mode) 
@标准模式(standards mode)
@几乎标准模式 (almost standards mode)
模式的不同主要是影响CSS内容的呈现,但某些情况也会影响到Javascript的解释执行。

5.通过文档类型(dtd)开启不同的文档模式
开启标准文档模式:HTML4.01 严格型、XHTML1.0严格型、HTML5
开启几乎标准文档模式:HTML4.01过渡型、HTML4.01框架集型、XHTML1.0过渡型、XHTML1.0框架集型

0 0
原创粉丝点击