第02阶段.前端基本功.webAPI
重点
概念: BOM(Browser Object Model) 是指浏览器对象模型,浏览器对象模型提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。BOM由多个对象组成,其中代表浏览器窗口的Window对象是BOM的顶层对象,其他对象都是该对象的子对象。
通俗理解: 把浏览器当做对象,通过访问对象的属性,实现操作浏览器的一组方法
window.onload = function () {
// 当页面加载完所有内容(包括图像、脚本文件、CSS 文件等)执行
}
window.onunload = function () {
// 当用户退出页面时执行(关闭页面)
}
window.onload事件 是页面所有资源加载完成时触发
window.onunload事件 是用户退出页面时触发
location 相当于浏览器地址栏的抽象, 通过window.location可以访问到,window可以忽略不写
我们学习location对象,目的是为了操作地址栏里面的url地址
概念:统一资源定位符 (Uniform Resource Locator, URL)
通俗理解: 互联网中的地址
scheme:通信协议
常用的http,ftp,maito等
host:主机 (找计算机)
服务器(计算机)域名系统 (DNS) 主机名或 IP 地址。
port:端口号 (找软件)
整数,可选,省略时使用方案的默认端口,如http的默认端口为80。
path:路径
由零或多个'/'符号隔开的字符串,一般用来表示主机上的一个目录或文件地址。
query:查询
可选,用于给动态网页传递参数,可有多个参数,用'&'符号隔开,每个参数的名和值用'='符号隔开。
例如:name=zs
fragment: 信息片断
字符串,锚点.
成员: 属性和方法又叫做成员
href 返回地址栏的整个url,设置值的时候,也可以起到跳转页面的作用
hash 返回地址栏url的fragment
host 返回地址栏url的主机名
search 返回地址栏url的键值对参数(query)
reload() 设置页面刷新
语法: location.reload([boolean])
参数是一个布尔值,不传参数则默认是false. 普通刷新,可能会从缓存拿数据
传true的话,是强制刷新.强制浏览器去服务器获取数据
assign() 设置页面跳转,记录历史
语法: location.assign(‘url地址‘) //点击跳转左上角箭头 可以返回之前
replace() 设置页面跳转,不记录历史
语法:location.replace(‘url地址‘)
back() 返回上一个页面
语法: history.back();
forward() 前进到下一个页面
语法: history.forward();
go(1/-1) 前进/ 返回
语法: history.go(number);
正数是前进,负数是后退.
history.go(1); //前进一步
history.go(2); //前进两步
history.go(-3); //后退三步
userAgent 返回识别客户端设备和浏览器的字符串
语法: navigator.userAgent
作用: 到达间隔时间之后,只调用一次回调函数
语法: window.setTimeout(回调函数, 间隔时间)
- window可以省略
- 间隔时间以毫秒为单位
- 返回这个定时器的标识符,是数字类型
// 创建一个定时器,1秒后执行
// timerId指向这个定时器的标识符
var timerId = setTimeout(function () {
console.log('Hello World');
}, 1000);
作用: 每隔一个间隔时间,就调用一次回调函数
语法: window.setInterval(回调函数, 间隔时间)
- window可以省略
- 间隔时间以毫秒为单位
- 返回这个定时器的唯一标示符,是数字类型
// 创建一个定时器,每隔1秒调用一次
//timerId 指向这个定时器的标识符
var timerId = setInterval(function () {
var date = new Date();
console.log(date.toLocaleTimeString());
}, 1000);
作用: 清除以setTimeout方法设置的定时器
语法: widnow.clearTimeout(定时器的标识符) window可以忽略
作用: 清除以setInterval方法设置的定时器
语法: widnow.clearInterval(定时器的标识符) window可以忽略
案例:
倒计时
简单动画
钟表案例
? name 和 top 是window 对象本身存在的属性
? name 是字符串,给name赋值为其他类型,也会转换成字符串
? top 是只读的属性,指向window对象,不可写
? 注意:
? 在全局申明变量,不要使用name 或者top
原文:https://www.cnblogs.com/f2ehe/p/11863539.html