Dom 就是html页面的模型,将每个标签都看成一个对象,js可以通过调用Dom来操作网页中的元素。
1、window对象 代表当前浏览器窗口,调用window对象的属性和方法时可以省略掉window。
常见方法:
alert() 弹出消息对话框
confirm() 弹出对话框,但是附带确定,取消按钮,点击确定,返回true,取消返回false。
navigate() 重新导向到另外一个网站,参数就是网址
setinterval()每隔一段时间执行指定的代码,有两个参数,第一个参数要执行的代码,代码用引号括起来,也可以是函
数名字,第二个参数就是间隔时间,单位是毫秒,返回一个计时器的标识
clearinterval() 取消setinterval的执行,参数为计时器的标识,告知需要终止哪个计时器。
settimeout() 定时执行一次代码,注意,只执行一次,第一个参数要执行的代码,代码用引号括起来,也可以是函
数名字,第二个参数就是执行时间,单位是毫秒,意思是多长时间后开始执行代码,也返回一个定时器的标识
cleartimeout() 清楚settimeout的执行,与clearinterval类似
属性
location.href 可以修改和获取当前页面的地址,和navigate()方法效果一样,location.reload()方法会刷新页面
event 用来获取发生事件时的信息,event属性下还有很多子属性,
altkey,crtlkey, shiftkey属性,表示发生事件时相应的键是否被按下,按下为true,否则为false
clientX,clientY 表示事件发生时鼠标在客户区的坐标
screenX screenY 事件发生时鼠标在屏幕上的坐标
offsetX offsetY 事件发生时鼠标相对于事件源的坐标
returnvalue属性 true 执行默认事件的处理,false 取消默认事件的处理
srcelement 获得事件的源对象
keycode 发生事件时的按键值
button 发生事件时鼠标的按键,1为左键,2为右键,3为左右同时按。
clipboardData对象 粘贴板的操作,它有几个主要的方法,注意参数中的Text不可省略,这个对象一般在元素的oncopy和
onpaste事件中使用,
clearData(“Text”)清空粘贴板
getData(“Text”)读取粘贴板的值并返回
setData(“Text”,val)设置粘贴板的值,注意该方法不能直接在oncopy事件中修改粘贴板的内容,我们必
须设置一个定时器即settimeout,经过一个时间间隔后在来设置粘贴板的值
history 操作历史记录
back()后退一个页面
forward()前进一个页面
go() 参数为一个数值,如果是正数,则前进页面,如果是负数,则后退页面
document 对象
write() writeln() 向文档中写入内容,差别在于writeln()会自动带一个回车换行,注意,当我们在一些
时间中使用这个方法的时候,写的内容会替代掉网页中的内容,所以要注意,这些方法只有在网页加载完成前调用才会和原有网
页内容整合在一起。这个方法通常用在广告代码和整合资源代码中使用。
getElementById() 根据元素的ID获取元素对象,来对元素进行操作,
getElementsByName() 根据元素的name属性来获取元素对象,由于name属性可以重复,所以返回的是一个数组
getElementsByTagName() 根据元素的标签类型来获取元素对象,由于标签类型可以重复,所以返回的也是一个
数组,它返回的是所有标签名为参数的数组。
2、body document对象的事件
onload 加载完毕后触发,由于浏览器是一边下载,一边解析执行的,所以有可能在head标签内的js代码要操作的
标签在body内还没创建好,所以才有onload事件,在完全加载完毕后在执行代码,注意只有body标签的onload事件才是在网页
完全加载完毕后执行,其他元素标签的onload事件则是在该元素加载完毕后就会触发的。
onunload 用户关闭窗口的时候触发
onbeforeunload 在窗口准备关闭的时候触发 为window.event.return.value赋值,内容是提示用户的消息。