美文网首页
JavaScript DOM 编程艺术(2)

JavaScript DOM 编程艺术(2)

作者: a_pioneer | 来源:发表于2017-07-27 23:51 被阅读0次
    1. setAttribute是第一级 DOM 的组成部分,不使用setAttribute而通过 dom 对象属性名同样能修改属性值。但是setAttribute的好处是能修改元素的所有属性。同时可移植性好。老的属性名赋值的方法只适用于 web 文档,DOM 方法适用于任何标记语言。
    2. DOM 是一种适用于多种环境和多种程序语言的通用型 API,严格遵守DOM能避免与兼容性有关的任何问题。
    3. 标签中的onclick="..."可以把任何方法放入引号间。相当于onclick=new Function('statement')。这时需要确保新生成的函数实例最后显式的返回false,才不会触发默认事件。如果生成的函数执行返回 true, onclick事件处理函数就认为被点击了,反之返回false,则认为没有被点击,不会触发默认事件。
    4. 标签中的事件中可以适用event, thisthis指对象节点本身。
    5. childNodes获取所有子节点(元素与文本节点),在html中换行符也会产生一个文本节点。
    6. nodeType每个节点都有nodeType
    • 元素节点:1
    • 属性节点:2
    • 文本节点:3
    1. nodeValue节点的值
    • <p>元素的 nodeValue不会显示出来,而是显示其子节点内容
    • <input>元素的nodeValue与其值value不是同一个概念
    1. 相对节点:firstChild, lastChild
    2. 伪协议javascript: 使得<a>可以通过href属性调用JS函数:<a href="javascript:void"/>,但在老的浏览器中可能会失败,这种做法并不好。
    3. #是一个仅供文档内部跳转的连接符号。未指向或某些浏览器会指向文档的头部<a href="#" />
    4. 方法检测
    • 对象检测:检测要适用的方法是否存在
    • 浏览器嗅探技术:有时候浏览器会撒谎,因此不建议使用。
    1. 性能优化
    • 减少访问DOM和减少标记。不管什么时候,只要查询DOM元素,浏览器就会搜索整个DOM树,从中查找可能匹配的元素。过多不必要的元素只会增加DOM树的规模与查找特定元素的时间。
    • 合并和放置脚本
    • 压缩代码
    平稳退化(优雅降级) 考虑用户无法使用JS或禁用JS的情况,仍确保用户能顺利浏览网站。一开始就构建完整的功能,然后再针对低版本浏览器进行兼容。 <a href="..." onclick="..." /> 当onclick失效时,确保href的跳转,有效时则禁止触发默认事件
    渐进增强 针对低版本浏览器进行构建页面,保证最基本的功能,然后再针对高级浏览器进行效果、交互等改进和追加功能达到更好的用户体验。
    以用户为核心的设计

    相关文章

      网友评论

          本文标题:JavaScript DOM 编程艺术(2)

          本文链接:https://www.haomeiwen.com/subject/swwtlxtx.html