在线和离线事件
online浏览器从离线状态切换到在线状态时触发
offline浏览器从在线状态切换到离线状态时触发
1 | window.addEventListener('online',function(){} |
js事件
Video API
属性
1 | //只读,返回当前音频/视频的长度(以秒计) |
事件
//不能跟window.onload 一起用
//一般用来计算视频的总长度
oncanplay:当文件就绪可以开始播放时运行的脚本(缓冲已足够开始时)。
//当用户点击播放按钮视频开始播放时会触发
ontimeupdate: 当播放位置改变时(比如当用户快进到媒介中一个不同的位置时)运行的脚本。(触发时隔为300毫秒,0.3秒执行一次)
onended:当媒介已到达结尾时运行的脚本(可发送类似“感谢观看”之类的消息)。[end] and de
方法
1 | play():开始播放音频/视频 |
视频全屏时去除掉默认的控制条
1 | video::-webkit-media-controls-enclosure { |
视频全屏时显示自定义的控制条
1 | //给自定义的控制条设置 |
1 | fullscreen.onclick = function () { |
WebStorage API
什么是WebStorage
所谓的WebStorage指的是客户端存储,在这里指的是浏览器端存储,比如在网站上自动登陆这些功能,其实就是把一些少量的数据存储在浏览器等客户端中,这样可以减少没必要的请求到服务器,降低服务器的压力,给用户提供更好的体验.
WebStorage的三种存储方式
cookie: 广泛使用 存储量4kb左右 会在浏览器和服务器间传递 一般由服务器端创建 可以设置存储时间(默认和session一样)
sessionStorage: H5新增 存储量5M左右 只会在浏览器存储数据 只会由浏览器端创建 存储时间是打开浏览器开始关闭浏览器消失 ,临时存储
localStorage: H5新增 存储量5M左右 只会在浏览器存储数据 只会由浏览器端创建 永久存储除非手动删除
key-value的排序是以key的首字母来进行排序
sessionStorage
储存在浏览器的内容中1
2
3
4
5
6
7
8
9
10//添加数据
window.sessionStorage.setItem(key,value);
//获取数据
window.sessionStorage.getItem(key);
//移除数据
window.sessionStorage.removeItem(key);
//清除数据,所有的
window.sessionStorage.clear();
//获取key,根据索引,从 0 开始
window.sessionStorage.key(n);
应用场景: 存储一些少量临时的数据
localStorage
1 | //添加数据 |
应用场景: 网页换肤,京东购物车
drag&drop API
将一个普通元素变成一个拖拽元素,加一个属性:draggable='true'
一定要加在行内,h5的属性,不能为CSS
事件
1 | /* 拖拽对象 */ |
属性
1
2
3
4
5
6
7 //这个属性是一个对象 它拥有一些属性
DataTransfer
e.dataTransfer
dataTransfer.setDate(key,value);//设置数据
dataTransfer.getDate(key);//设置数据
//包含一个在数据传输上所有可用的本地文件列表
files
FileReader API (!important)
1 | input type='file' 存储在浏览器内存中 |
FileReader 对象是HTML5新增的一个内置对象,通过这个对象可以读取文件的内容
对象
1 | var fileReader = new FileReader(); |
方法
1 | readAsDataURL data: URL格式的字符串以表示所读取文件的内容(就是base64的编码) |
事件
onload 等待把文件读取完
属性
result 文件读取的结构就存在result属性中
Geolocation API
Geolocation 可以使得Web应用程序给用户提供的地理位置信息.
获取一次地理位置的方法(回调)
1 | navigator.geolocation.getCurrentPosition(成功时的回调,失败时的回调,参数设置); |
1 | 参数设置: |
实时获取地理位置的方法(回调)
1 | //地理位置信息: |
end