javascript DOM编程艺术笔记——CH5 Best practise
来源:互联网 发布:net域名为什么不值钱 编辑:程序博客网 时间:2024/05/15 10:23
best practise
- best practise
- graceful degredation平稳退化
- unobtrusive javascript 分离javascript
- backward compatibility 向后兼容浏览器
- performace considerations 性能考虑
- best practise
graceful degredation平稳退化
浏览器不支持,用户禁用javascript(弹窗等);仍然能顺利浏览基本网页
作用:
SEO中的搜索机器人一般不懂javascript,优化排名需要平稳退化。
eg:
<a href="#" onclick="popUp(‘www.baidu.com’);return false;">EXAMPLE</a>
//优化后:
<a href="www.baidu.com" onclick="popUp(this.getAttribute('href'));return false;">ex</a>
unobtrusive javascript 分离javascript
即把事件(event)如onclick都分离到js外部文件中。
利用class!
<a href="www.baidu.com" class="popUp">ex</a>
然后在js中用element.event=action…
e.g:
var links = document.getElementsByTagName("a");for(var i = 0;i<links.length;i++){if(links[i].getAttribute("class")== "popUp"){links[i].onclick=function(){popUp(this.getAttibute("href"));return false;}}}
又因为document需要加载完毕后才能使用,
若script在head部分,则js先加载;若在前,则一起加载
都不能保证DOM完整。
而document是windows的一个属性。
hence,加上
“`
windows.onload = prepareLinks;
function prepareLinks(){
var links = document.getElementsByTagName(“a”);
for(var i = 0;i
backward compatibility 向后兼容(浏览器)
加一个if语句。
if(!method)return false;
注意 method去掉()
performace considerations 性能考虑
- 少访问DOM(document.getElementById等等)
- 减少标记
- 合并和放置脚本
放置脚本在之前 - 压缩脚本
即删除不必要的字节(空格注释等)
工具:JSMin、雅虎的YUI Compressor、谷歌的Closure Compiler
0 0
- javascript DOM编程艺术笔记——CH5 Best practise
- javascript DOM编程艺术笔记——CH3 DOM
- javascript DOM编程艺术笔记——CH9 CSS-DOM
- [读书笔记]javascript编程艺术——CH5 javascript编程原则和良好习惯
- javascript DOM编程艺术笔记——CH8 Enhancing content
- JavaScript DOM编程艺术 笔记
- 《JavaScript DOM编程艺术》笔记
- 《JavaScript DOM编程艺术》笔记
- javascript DOM编程艺术 笔记
- JavaScript DOM编程艺术笔记
- javascript+dom编程艺术 -笔记
- JavaScript Dom 编程艺术 笔记
- JavaScript DOM编程艺术笔记
- 《JavaScript DOM 编程艺术》笔记
- javascript dom编程艺术笔记
- 《JavaScript+DOM编程艺术》笔记
- Javascript+DOM编程艺术——摘要
- JavaScript DOM编程艺术—幻灯片动画
- 俞敏洪的作息时间表
- ZigZag Conversion
- Leetcode: Longest Palindromic Substring
- javascript DOM编程艺术笔记——CH3 DOM
- 面向对象(继承+抛出异常)-第20天
- javascript DOM编程艺术笔记——CH5 Best practise
- LeetCode Pow(x, n)
- javascript DOM编程艺术笔记——CH7 creating markup on the fly
- Python安装PIL遇到‘Could not find a version that satisfies the requirement PIL’
- 渐进增强和平稳退化
- HTML 、XHTML和 HTML5辨析
- python 数据结构编程技巧
- 利用Session防止表单重复提交
- 笔试题之:快排求第n大的数字