JS BOM(浏览器对象)

时间:2021-04-28 01:33:48

BOM即浏览器对象模型,它包括如下一些对象!

(一)screen对象,Screen 对象中存放着有关显示浏览器屏幕的信息。

常见的属性有:

availHeight:返回显示屏幕的高度

availWidth:返回显示屏幕的宽度

colorDepth:返回目标设备或缓冲器上的调色板的比特深度。

height:返回屏幕区域的实际高度

width:返回屏幕区域的实际宽度

(二)Window对象,Window 对象表示一个浏览器窗口或一个框架。

常见方法:

(1)窗口的打开与关闭:

window.open(URL,name,features,replace),四个都为可选参数

URL:新窗口中显示的文档的 URL

name:声明了新窗口的名称

features:声明了新窗口要显示的标准浏览器的特征

replace:布尔值,true - URL 替换浏览历史中的当前条目。 false - URL 在浏览历史中创建新的条目。

window.close()关闭当前窗口

(2)改变窗口的位置和大小:

moveTo(x,y) 方法可把窗口的左上角移动到一个指定的坐标。

moveBy(x,y) 方法可相对窗口的当前坐标把它移动指定的像素。

resizeTo(width,height) 方法用于把窗口大小调整为指定的宽度和高度。

resizeBy(x,y) 方法用于根据指定的像素来调整窗口的大小。

(3)状态栏,通过设置window对象的status属性和defaultStatus属性来改变状态栏显示的基本信息。

如: window.defaultStatus = "php点点通";

(4)定时设定,定时器可以在特定的时间内执行特定的函数

setTimeout(epress,time) 方法用于在指定的毫秒数后调用函数或计算表达式。

clearTimeout(timeID)停止已经启动的定时器

如下脚本:

<script>

  • function timer(){
  • var t = setTimeout("alert('5秒到了')",5000);
  • }
  • </script>
  • <input type="button" value="点击改变" onclick="timer()" />

setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。

clearInterval()停止使用setInterval() 方法

如下脚本:

<script>

  • var timer;
  • function start(){
  • var date = new Date().toLocaleString();
  • window.status = date;
  • }
  • </script>
  • <input type="button" value="显示时间" onclick="timer=setInterval('start()',1000)" />
  • <input type="button" value="停止时间" onclick="clearInterval(timer)" />

(5)Navigator对象,包含的属性描述了正在使用的浏览器

appName:返回浏览器的名称。

appVersion:返回浏览器的平台和版本信息。

platform:返回运行浏览器的操作系统平台。

appCodeName:返回浏览器的代码名。

(6)History对象,其实就是来保存浏览器历史记录信息。

其属性有:length,返回浏览器历史列表中的 URL 数量。

其方法有:

back()加载 history 列表中的前一个 URL。

forward()加载 history 列表中的下一个 URL。

go()加载 history 列表中的某个具体页面。

如常见的返回上一页:History.go(-1)和history.back()

(7)Location对象,Location 对象是 Window 对象的一个部分,可通过 window.location 属性来访问。

其方法:

hash:设置或返回从井号 (#) 开始的 URL(锚)。

host:设置或返回主机名和当前 URL 的端口号

hostname:设置或返回当前 URL 的主机名。

href:设置或返回完整的 URL。

pathname:设置或返回当前 URL 的路径部分

port:设置或返回当前 URL 的端口号

protocol:设置或返回当前 URL 的协议。

search:设置或返回从问号 (?) 开始的 URL(查询部分)。

其方法:

assign()加载新的文档。

reload()重新加载当前文档。

replace()用新的文档替换当前文档。

上面是我从网上摘抄的文档,基本上涵盖了我们所有我们学过的基础知识,还有部分的超出(如navigator对象).

计时器是个重点,合适的增加计时器和删除计时器是个难点,而且计时器的多次加入也会影响网页的性能,所以我们提倡少用计时器或者是不用计时器.

<html>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<head>
<script type="text/javascript">
var c=0
var t
function timedCount()
{
document.getElementById('txt').value=c
c=c+1
t=setTimeout("timedCount()",1000)
}
function stopCount()
{
clearTimeout(t)
}
</script>
</head>
<body>
<form>
<input type="button" value="开始计时!" onClick="timedCount()">
<input type="text" id="txt">
<input type="button" value="停止计时!" onClick="stopCount()">
</form>
<p>请点击上面的“开始计时”按钮来启动计时器。输入框会一直进行计时,从 0 开始。点击“停止计时”按钮可以终止计时。</p>
<p>timedCount(),1000ms自己调自己。</p>
</body>
</html>

上面是一段计时器代码,其实就是掌握几个对象,和相应的几个方法和区别.