BOM
概述:BOM(全称bowser object model)浏览器对象模型,用于浏览器相关内容操作; BOM是一个缺乏范围的模型,为了保证范围性产生了一系列的共用对象来解决这个问题,沿用至今。但这些共有对象也存在对应的兼容问题,直至W3C介入(ie 10后),兼容问题得到保证。
BOM的共有对象及相关的结构
window的相关方法
概述:window属于浏览器global对象(顶层对象);所有全局函数都是属于window的(window可省略)
控制台打印方法
弹窗相关方法
窗口打开关闭方法
改变窗口大小的方法
改变窗口位置的方法
改变滚动栏位置的方法
打印方法
查找方法
窗口聚焦和失焦的方法
window的相关属性
获取窗口的父窗口
获取高度;获取宽度
Document 文档对象
document对象是属于BOM的组成部分,他里面的一些的相关操作和对应的属性是属于DOM操作,具体的内容在对应的DOM中会提到。
document表示的是对应的HTML文档,他是用于操作对应HTML文档。
Location 地址栏对象
相关方法
重新加载
指定对应的地址进行跳转(存在历史缓存)
替换当前地址进行跳转 (没有历史缓存)
对应的href进行赋值也可以跳转
相关属性
history 历史对象
history他里面包含了对应的历史页面,他是对于历史页面进行相关操作(页面替换,页面的跳转)
相关属性
相关方法
pushState和replaceState的区别
pushState或者是replaceState 如果传入对应的url 他会改变对应的url地址 (并非跳转 不会刷新)
pushState或者replaceState 会给对应的state进行赋值
pushState 会新增对应新的历史页面 replaceState 不会新增(他会替换当前历史页面)
Screen 屏幕对象
相关属性
Navigator 导航对象
主要是用于获取用户浏览器及系统相关的设置以及内容
相关属性
路由
路由的核心就是分发,将对应的内容分发对应的路由地址。
前端路由(渲染)
根据对应的路由地址来渲染不同页面
前端路由的分类
页面路由(会进行页面的跳转 页面会刷新)
hash路由(根据对应的hash值来渲染对应的页面 不会进行页面的刷新操作)
history路由 (根据对应的地址的变化 而渲染对应的页面 不会进行页面的刷新操作)
需要对应得pushState调用或者replaceState调用
在改变了对应得state值以后 调用对应得forward方法或者是back方法或者是go方法
SPA 单页应用程序(只有一个页面)里面常用的路由是hash以及history路由
在对应的单页应用程序中我们常用vue和react等框架来进行开发,这就导致了我们对应的vue和react中对应的路由模式常用hash模式及history模式(默认设置的路由模式都是hash模式)
后端路由 (业务)
根据对应的路由地址来处理不同的业务(访问不同的接口)