1 关于编写网页时的原则
编写网页时,应牢记两个原则:
- 渐进增强:一切从内容开始,也就是说从一开始就得把核心内容表达在HTML上,不要试图使用JS添加核心内容,渐进增强的意思是使用CSS,JS达到改进呈现的效果。
- 平稳退化:渐进增强的实现必然支持平稳退化,就是说按照渐进增强的原则充实内容,即使缺乏必要的CSS和JS都不影响访问者访问核心的内容
2 关于元素<a>
中的href
属性
2.1 javascript:
伪协议
“真”协议用来在计算机之间传递数据包,如HTTP协议等,而伪协议这是一种非标准化的协议。javascript: ;
伪协议允许通过一个链接来调用JS函数,如:
<a href="javascript:func(x);">example 1</a>
<a href="javascript:;">example 2</a>
<a href="javascript:void(0);">example 3</a><!--制作死链接,推荐使用这个,而不是"javascript:;",因为使用"javascript:;",链接会去调用一个不存在的东西-->
<a href="#0">example 4</a>
2.2 改变链接被点击的默认行为
对元素<a>
添加事件属性时,如对某链接添加一个onclick
事件处理函数,如果让改处理函数返回布尔值true
,这样一来,当点击链接时,onclick
事件处理函数就会认为该链接被点击,自动执行链接被点击的默认行为,但如果返回的是false
,就不会认为该链接被点击,这时就不会执行链接被点击的默认行为。
其实想点击链接只要执行JS,还可以使用#
符号,#
符号是一个仅供文档内部使用的链接记号,可以用作为创建一个空链接,不过当然了上面那个方法还有可以携带一个href
属性信息供JS调用。
3 编写脚本时的性能考虑
编写脚本时的性能考虑:
- 少访问DOM
- 减少元素标记
- 合并文件并放置:意义相似的脚本函数合并成一个文件,最好放置在文档的底部,
<body/>
标记之前 - 压缩脚本:将多余的字节如空格,无用注释统统删除掉