美文网首页
【学习笔记】Javascript DOM 编程艺术 (第2版)

【学习笔记】Javascript DOM 编程艺术 (第2版)

作者: 跑者小越 | 来源:发表于2017-04-23 11:10 被阅读15次

    Document Object Model 文档对象模型:是一套对文档的内容进行抽象和概念化的方法。、

    W3C对DOM的定义是:一个与系统平台和编程语言无关的接口,程序和脚本可以通过这个接口动态地访问和修改文档的内容、结构和样式。

    建议在每条语句的末尾都加上一个分号

    单行注释用//
    多行注释用/*

    允许直接对变量赋值而无需事先声明,但是提前声明变量是一种良好的编程习惯

    变量和其他语法元素都是区分大小写的

    不允许变量名中包含空格或标点符号($除外)

    驼峰格式

    javascript不需要进行类型声明,属于弱类型语言

    在同一个脚本中字符串的引号保持一致(单引号,双引号)

    布尔值不是字符串,千万不要把布尔值用引号括起来

    如果在某个函数中使用了var,那个变量将被视为一个局部变量
    反之,如果没有使用var,那个变量就将被视为一个全局变量
    所以在定义一个函数时,一定要把它内部的变量全都明确地声明为局部变量,如果你总是在函数里使用var关键字来定义变量,就能避免任何形式的二义性隐患

    三种对象类型
    用户自定义对象
    内建对象
    宿主对象:由浏览器提供的对象

    三种节点:元素节点、文本节点、属性节点

    getElementById将返回一个对象,该对象对应着文档里的一个特定的元素节点

    getElementByTagName和getElementsByclassName将返回一个对象数组,它们分别对应着文档里的一组特定的元素节点。

    setAttribute做出的修改不会反映在文档本身的源代码里
    DOM对页面内容进行刷新却不需要在浏览器里刷新页面

    严格遵守“第1级DOM”能够让你避免与兼容性有关的任何问题

    onclick="showPic(this); return false;"

    nodeNodes 属性返回的数组包含所有类型的节点,而不仅仅是元素节点
    连空格和换行符都会被解释为节点

    元素节点的nodeType属性值是1
    属性节点的nodeType属性值是2
    文本节点的nodeType属性值是3

    使用nodeValue属性来改变一个文本节点的值

    node.childNodes[0] = node.firstChild
    node.lastChild = node.childNodes.length-1

    平稳退化:让访问者在他们浏览器不支持javascript的情况下仍能顺利地浏览你的网站,搜索引擎友好

    从性能考虑,尽量少访问DOM和尽量减少标记

    根据HTTP规范,浏览器每次从同一个域名中最多只能同时下载两个文件。考虑合并脚本,减少加载页面时发送

    如果想用javascript给某个网页添加一些行为,就不该让javascript代码对这个网页的结构有任何依赖

    nodeName属性总是返回一个大写字母的值

    onclick鼠标点击事件,用Tab键移动到某个链接然后按下回车键也会触发

    onkeypress按下键盘上任何一个键都会触发onkeypress事件,包括Tap键,会导致只使用键盘访问的用户永远无法离开当前链接

    HTML-DOM只能用来处理Web文档

    结构与行为的分离程度越大越好

    如果把position属性值是absolute的元素A放入一个position属性值是relative的元素B,B就成为A的容器元素,而A在B的显示区域里按absolute方式进行摆放

    相关文章

      网友评论

          本文标题:【学习笔记】Javascript DOM 编程艺术 (第2版)

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