API的概念
API(Application Programming Interface)即是应用程序编程接口,是指开发人员基于应用程序或框架编写的一些预先定义的、具有一定作用的、能帮助外部人员理解并使用的函数或方法。
Web API的概念
是指浏览器提供的一系列可以获取浏览器元素(BOM)、页面元素(DOM)并完成某些功能的函数或方法。
一、BOM
BOM(Browser Object Model)即是浏览器对象模型,我们可以通过调用一些Web API可以获取浏览器窗口、设备、分辨率等信息,以及控制弹出框、浏览器跳转等操作。
浏览器信息类
1、获取屏幕分辨率也是屏幕的宽高
window.screen.width
window.screen.height
2、获取屏幕可用宽高,指的是除去浏览器上下状态栏后的宽高
window.screen.availWidth
window.screen.availHeight
3、获取浏览器宽高,也是页面视图容器的大小,包括浏览器可见区域宽高+滚动条的宽高
window.outerWidth
window.outerHeight
4、获取浏览器实际可用宽高,也是页面视图区域大小,包括浏览器可见区域宽高+滚动条的宽高
window.innerWidth
window.innerHeight
需要注意是,一般的情况下,与第3点数值一致,但是当页面被放大或缩小时,outerWidth不变,而innerWidth会随放大或缩小而变化。outerHeight和innerHeight同理
浏览器操作类
1、对话框,浏览器原生弹出对话框
confirm('我是confirm');
prompt('我是prompt');
alert('我是alert');
2、打开新窗口
window.open(url, name, params);
url:新窗口地址
name:新窗口名字
params:新窗口参数(各参数之间使用逗号分隔,具体参数查看官方文档)
4、定时器
setInterval(func, second); // 循环执行
setTimeout(func, second); // 只执行一次
clearInterval(timer); // 清除指定的setInterval定时器
clearTimeout(timer); // 清除指定的setTimeout定时器
func:函数,在定时期间执行的内容
second:Number类型,单位为毫秒,设置定时多久
timer:指定的定时器名
5、history对象
当前窗口浏览的历史记录长度
window.history.length;
基于当前url记录列表,前往第某个url或指定url
window.history.go(number|URL);
基于当前url记录列表,返回前一个url
window.history.back();
基于当前url记录列表,返回下一个url
window.history.forward();
6、location对象
可用于获取当前页面的完整url信息,也可用于修改或刷新当前url
console.log(window.location.href);
window.location.href = 'url';