最好的位置
最好的位置是html的最后,</body>之前,这样可以更快的加载页面。
解释型程序
不需要编译器,需要解释器,没有解释器就无法执行。
区别
编译型程序,如有错误在编译阶段就能发现,而解释性只能执行到有关代码才能发现。
编译型语言汪汪速度快,可移植性好,但是学习比较复杂。
javascript优点之一是容易入门。
==
全等比较符不仅比较值,也比较类型
!=也是如此
DOM
D
document(文档)
O
object(对象)
M
model(模型)
节点
- 元素节点
- 文本节点
- 属性节点
获取元素
分别通过ID,标签名字,类名获取
getElementById
id的值必须放到单引号或者双引号里面;
getElementsByTagName
允许把一个通配符作为他的参数
getElementsByClassName
指定多个类名空格隔开
getAttribute
此方法不能通过document对象调用,只能通过元素节点对象调用
if
if(something) = if(someting != null)
setAttribute
修改不会反映在源码中,源于DOM工作模式:先加载文档静态内容,在动态刷新,动态刷新不影响静态内容,这也是DOM的威力,刷新页面内容却不在浏览器刷新。
事件处理函数工作机制
如果某个元素添加处理函数后,一旦事件发生,相应的js代码就会执行,被调用的js返回一个值,这个值将被传递给那个事件处理函数。
childNodes
获取任何一个元素的子元素,是一个包含这个元素全部子元素的数组。
childNodes 属性返回所有类型的节点,不仅仅是元素节点,事实上每一样东西都是节点,甚至空格,换行符都会被解释为节点。
window.onload
页面加载时侯调用
nodeType
元素节点:1
属性节点:2
文本节点:3
nodeValue
改变一个文本节点的值