引入js文件看不明白,但这个html的例子让我立刻明白除了onlaod还有一种更厉害的,页面加载结束后要执行交互的DomReady.
2016-12-11
“对于元素节点,nodeName中保存的始终是元素的标签名,nodeValue的值始终为null;”
同理:
对于属性节点,nodeName中保存的始终是属性的名称,nodeValue的值始终为属性的值;
对于文本节点,nodeName中保存的始终是#text,nodeValue的值始终为文本内容;
对于注释节点,nodeName中保存的始终是#comment,nodeValue的值始终为注释的内容;
对于文档类型节点,nodeName中保存的始终是doctype的名称,nodeValue的值始终为null;
同理:
对于属性节点,nodeName中保存的始终是属性的名称,nodeValue的值始终为属性的值;
对于文本节点,nodeName中保存的始终是#text,nodeValue的值始终为文本内容;
对于注释节点,nodeName中保存的始终是#comment,nodeValue的值始终为注释的内容;
对于文档类型节点,nodeName中保存的始终是doctype的名称,nodeValue的值始终为null;
2016-12-11
1,2,3这些数值常量是用来干什么的?
通常情况下我们可以比较字符常量来确定节点的类型。但为了确保浏览器兼容(尤其是IE),最好将nodeType属性与数字值进行比较。
通常情况下我们可以比较字符常量来确定节点的类型。但为了确保浏览器兼容(尤其是IE),最好将nodeType属性与数字值进行比较。
2016-12-11
有一个大坑:
<body>
<p>文档对象模型</p>
</body>
这种写法实际上p元素是body的第二个子节点, 因为浏览器默认识别为:
<body><--我是看不到的文本节点, body的第一个子节点-->
<p>文档对象模型</p>
</body><--我是看不到的文本节点, body的第三个子节点-->
下面这种写法p元素才真正是body的第一个子节点
<body><p>p元素的标签跟body标签在同一行, 没有断行</p></body>
ul li同理
参考: https://segmentfault.com/q/1010000005350433
<body>
<p>文档对象模型</p>
</body>
这种写法实际上p元素是body的第二个子节点, 因为浏览器默认识别为:
<body><--我是看不到的文本节点, body的第一个子节点-->
<p>文档对象模型</p>
</body><--我是看不到的文本节点, body的第三个子节点-->
下面这种写法p元素才真正是body的第一个子节点
<body><p>p元素的标签跟body标签在同一行, 没有断行</p></body>
ul li同理
参考: https://segmentfault.com/q/1010000005350433
有一个大坑:
<body>
<p>文档对象模型</p>
</body>
这种写法实际上p元素是body的第二个子节点, 因为浏览器默认识别为:
<body><--我是看不到的文本节点, body的第一个子节点-->
<p>文档对象模型</p>
</body><--我是看不到的文本节点, body的第二个子节点-->
下面这种写法p元素才真正是body的第一个子节点
<body><p>p元素的标签跟body标签在同一行, 没有断行</p></body>
ul li同理
参考: https://segmentfault.com/q/1010000005350433
<body>
<p>文档对象模型</p>
</body>
这种写法实际上p元素是body的第二个子节点, 因为浏览器默认识别为:
<body><--我是看不到的文本节点, body的第一个子节点-->
<p>文档对象模型</p>
</body><--我是看不到的文本节点, body的第二个子节点-->
下面这种写法p元素才真正是body的第一个子节点
<body><p>p元素的标签跟body标签在同一行, 没有断行</p></body>
ul li同理
参考: https://segmentfault.com/q/1010000005350433