1.BOM的概述
browser object modal :浏览器对象模型。 浏览器对象:window对象。 window对象是JavaScript层级中的顶层对象 window对象代表一个浏览器窗口或一个框架 Window 对象会在 <body> 或 <frameset> 每次出现时被自动创建。 window的子对象有Navigator对象(判断当前浏览器是什么浏览器)、Screen对象(通过显示屏幕能拿到屏幕的分辨率)、 History对象、Location对象、Document对象。2. window的属性
innerheight: 返回文本显示区的高度 innerwidth: 返回文本显示区的宽度 IE不支持 通用写法:document.body.clientWidth (省略了window对象) document.body.clientHeight (IE字体默认高度是19) outerheight:包括了工具栏、菜单栏的高度 outerwidth:包括滚动条的宽度 self :等同于window对象status:状态栏
parent:是打开窗口的父窗口对象(代表的是拿到父窗口window对象) opener:是打开窗口的父窗口对象。 2种情况下使用opener:(必须要求两个窗口有父子关系) 1.使用winodw.open()方法打开的页面 2.超链(里面的target属性要设置成_blank)页面之间的数据传递 跳转到子窗口页面
子窗口
2种情况下使用parent:
1.iframe 内嵌框架 2.frame 框架 frames[]:拿到子窗口对象。 数组类型,代表子窗口的window对象的集合,可以通过frames[索引]拿到子窗口的window对象。 示例:父子窗口相互传参.window对象的parent属性 姓名:
Document
方法:
open()方法,是打开一个新的浏览器窗口(页面)或查找一个已命名的窗口.
语法: window.open(URL,name,features,replace) URL:打开的页面 name:打开的页面的名字 features:窗口特征对话框:
1)消息框 alert() ; 2)确认框 confirm() ; 返回Boolean类型的值 3)输入框 prompt() ; (了解)返回输入的字符串,一个参数,就是输入值。两个参数,第二个参数是默认值。定时器:
setTimeout ,setInterval 定时器: 1.setTimeout() :隔一段时间调用某个函数,(只会调用1次)返回的是一个计时器对象,自动销毁 clearTimeout():销毁setTimeout()产生的计时器对象 2.setInterval() :每隔一段时间调用某个函数(多次调用)返回的是一个计时器对象,直到你销毁,不会自动销毁 clearInterval():销毁setInterval()产生的计时器对象 close()方法:关闭浏览器窗口window对象的计时器 10
3. history对象(存储访问过的页面,并按顺序排列好)
a. forward()前进一个页面 b. back() 后退一个页面 c. go(n) 直接去哪个页面,正数是前进,负数是后退.4. location对象。
1.href 属性: 是指要连接到其他的URL 写法一、window.location.href='demo_window对象的close方法.html' ; 写法二、window.location='demo_window对象的close方法.html' ;2.reload方法: 刷新,重新加载本页面。
写法: window.location.reload() ;5.常用事件
*鼠标移动事件 onmousemove(event) : 鼠标移动事件 event是事件对象。名字固定。 (鼠标移动时会产生一个事件event对象)获取横竖坐标是通过event对象的clientX、clientY属性。event在这里代表鼠标的事件,鼠标的属性可以通过它拿到。
onmouseover : 鼠标悬停事件,鼠标移动到某个空间发生的事件 onmouseout : 鼠标移出事件 当鼠标从控件上移开的时候* 鼠标点击事件 onclick : 当鼠标单击某个控件时发生 示例: 当单击按钮时,在<p>中显示字符串 "冠希哥来了" 参见(demo03_鼠标单击事件.html)
* 加载与卸载事件
onload ,onunload 加载事件(onload) : 在整个页面的元素加载完毕之后发生 卸载事件(onunload) : 是在页面关闭时发生 注意: onload和onunload事件必须写在body或者图片标签里面 示例参见(demo04_加载卸载事件.html) * 聚焦与离焦事件 onfocus, onblur 聚焦事件:是在控件获得焦点的时候发生 离焦事件:是在控件失去焦点的时候发生示例: 文本框获得焦点的时候改变样式,失去焦点时变回原样(参见demo05_聚焦离焦事件.html)
* 键盘事件 onkeypress,onkeyup,onkeydown onkeypress: 按下键盘按键并松开 οnkeypress="fun(this,event)"通过event获取与事件相关的信息 onkeydown : 按下按键发生 onkeyup: 松开按键 示例参见(demo06_键盘事件.html`)
* 提交与重置事件
onsubmit,onreset 提交事件: 是在点击提交按钮后发生。(必须写在form表单中,表单中的数据提交给另一个页面) 重置事件: 是在点重置交按钮后发生。示例: 提交表单中的数据(检查):如果是陈冠希:通过,否则不能提交数据(参见demo07_提交重置事件.html)
* 选择与改变事件 onselect: onselect: 只能用于输入框. 当选择输入框中的文本时发生 onchange: onchange: 用于select(下拉框)和文本框. 对于下拉框是在选项发生变化的时候发生 对于文本框是在文本框的内容发生变化并且失去焦点时发生
示例: 当选择文本框的内容时,弹出文本框的内容
下拉框的selectedIndex属性:代表选中某项的索引图片轮流滚动
JavaScript调用CSS代码的两种方式:
1、用style对象 eg:p.style.color="red"; 带“-”的属性去掉“-”首字母大写
2、用className属性(当CSS为类选择器时), p.className="one";
JavaScript调用HTML代码:
1、拿到html标签对象。
2、标签对象.innerHTML="<img src='1.jpg' width='200' height='200'>";
删除属性或事件:
空间对象.removeAttribute("要删除的属性或事件");