一、什么是BOM
BOM:浏览器对象模型(Browser Object Model)
BOM提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。简单来说就是提供了许多浏览器的对象。
二、BOM到底能够做什么
1.弹出新的浏览器窗口(重要)
2.移动,关闭浏览器窗口以及调整窗口大小(比较少)
3.页面的前进后退(比较少)
三、window对象
1.常用的属性:history 、location。
属性名称 | 说 明 |
history | 有关客户访问过的URL的信息 |
location | 有关当前 URL 的信息 |
2.使用属性的方法:
window.属性名= "属性值"
eg:
window.location="http://www.baidu.com"
表示跳转到百度页面
3.常用的方法
方法名称 | 说 明 |
prompt( ) | 显示可提示用户输入的对话框 |
alert( ) | 显示带有一个提示信息和一个确定按钮的警示框 |
confirm( ) | 显示一个带有提示信息、确定和取消按钮的对话框 |
setTimeout( ) | 在指定的毫秒数后调用函数或计算表达式 |
setInterval( ) | 按照指定的周期(以毫秒计)来调用函数或表达式 |
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style type="text/css">
div{
height:100px;
width: 100px;
border: 1 solid red;
}
</style>
</head>
<body>
<button type="button" onclick="cp()">停下</button>
</body>
<script type="text/javascript">
// confirm 和 prompt
var a = confirm("请问你有女朋友吗?");
var b = prompt("请问你有女朋友吗?");
console.log(a);
console.log(b);
// 定时器 指定的时间之后调用
setTimeout(function(){
alert("过一会我就出来了!")
},3000);
// 在指定的时间内循环调用
let timfunction = setInterval(function(){
console.log("芜湖!我直接龙卷风摧毁停车场!");
},3000);
function cp(){
// 使用clearInterval()方法来停止循环
clearInterval(timfunction);
console.log("你在说什么?我上去就是梆梆!")
}
</script>
</html>
PS:confirm()与alert ()、 prompt()区别
alert( ):一个参数,仅显示警告对话框的消息,无返回值,不能对脚本产生任何改变
prompt( ):两个参数,输入对话框,用来提示用户输入一些信息,单击“取消”按钮则返回null,单击“确定”按钮则返回用户输入的值,常用于收集用户关于特定问题而反馈的信息
confirm( ):一个参数,确认对话框,显示提示对话框的消息、“确定”按钮和“取消”按钮,单击“确定”按钮返回true,单击“取消”按钮返回false,因此与if-else语句搭配使用
定时函数
setTimeout()
function timer(){
var t=setTimeout("alert('3 seconds')",3000);
}
//3秒执行一次
setinterval()
var myTime=setInterval("disptime() ", 1000 );
清除函数
clearTimeout()
var t=setTimeout("alert('3 seconds')",3000);
clearTimeout(t);
clearInterval ()
var myTime=setInterval("disptime() ", 1000 );
clearInterval(myTime);
history对象
需要用window.history来获取
常用的方法
名称 | 说 明 |
---|---|
back() | 加载 history 对象列表中的前一个URL |
forward() | 加载 history 对象列表中的下一个URL |
go() | 加载 history 对象列表中的某个具体URL |
location对象
需要用window.location来获取
常用属性
名称 | 说 明 |
---|---|
host | 设置或返回主机名和当前URL的端口号 |
hostname | 设置或返回当前URL的主机名 |
href | 设置或返回完整的URL |
常用方法
名称 | 说 明 |
---|---|
reload() | 重新加载当前文档 |
replace() | 用新的文档替换当前文档 |
eg:window.location.replace("https://www.baidu.com");
js内置对象
Array —— 用于在单独的变量名中存储一系列的值;
String —— 用于支持对字符串的处理;
Math —— 用于执行常用的数学任务,它包含了若干个数字常量和函数;
Date —— 用于操作日期和时间。
Math:
方法 | 说 明 | 示例 |
---|---|---|
ceil() | 对数进行上舍入 | Math.ceil(25.5);返回26Math.ceil(-25.5);返回-25 |
floor() | 对数进行下舍入 | Math.floor(25.5);返回25Math.floor(-25.5);返回-26 |
round() | 把数四舍五入为最接近的数 | Math.round(25.5);返回26Math.round(-25.5);返回-26 |
random() | 返回0~1之间的随机数 | Math.random();例如:0.6273608814137365 |
Math
var iNum=Math.floor(Math.random()*98+2)
Date
var today=new Date(); //返回当前日期和时间
var tdate=new Date("september 1,2013,14:58:12");
常用方法
方法 | 说 明 |
---|---|
getDate() | 返回 Date 对象的一个月中的每一天,其值介于1~31之间 |
getDay() | 返回 Date 对象的星期中的每一天,其值介于0~6之间 |
getHours() | 返回 Date 对象的小时数,其值介于0~23之间 |
getMinutes() | 返回 Date 对象的分钟数,其值介于0~59之间 |
getSeconds() | 返回 Date 对象的秒数,其值介于0~59之间 |
getMonth() | 返回 Date 对象的月份,其值介于0~11之间 |
getFullYear() | 返回 Date 对象的年份,其值为4位数 |
getTime() | 返回自某一时刻(1970年1月1日)以来的毫秒数 |