新兴API
2021-02-13 18:18
- 接受一个参数,即在重绘屏幕之前调用的函数,这个函数负责改变下一次重绘的DOM,
感觉效果可能和setTimeout差不多,但是不支持传第二个时间参数 不过在火狐浏览器中,requestAnimationFrame方法传递的函数,可以传入一个时间吗参数,它代表从代码时间元年到现在的毫秒数()
mozAnimationStartTime在火狐居然不行???
只能用下面的这样兼容所有的浏览器
function draw(){
var div = document.querySelector("div");
var drawStart = Date.now();
var diff = drawStart - starttime;
starttime = drawStart;
div.style.width = (parseInt(div.style.width,10)+5)+"%";
if(div.style.width !="100%"){
console.log(diff);
requestAnimationFrame(draw);
}
}
var starttime = Date.now();
requestAnimationFrame(draw);- page visibility API
当检测用户是否在看着对应的document - 该API的document.hidden 返回一个boolean值,当页面不被展示的时候会true
- document.visibilityState 不过这个属性有很差的兼容性问题,在Google下有三种状态visible,hidden,prerender
visibliitychange事件,当可见与不可见发生交替的时候,发生该事件
document.addEventListener("webkitvisibilitychange",fn);
function fn(){
if(document.hidden){
console.log("hidden")
}else{
console.log("visible");
}
}console.log(navigator.geolocation);
navigator.geolocation.getCurrentPosition(function(position){
// console.log(position.coords.latitude)
// console.log(position.coords.longitude)
//
console.log(position.coords.latitude,position.coords.longitude)
},function(error){
console.log(error.code,error.message)
});
上一篇:C# Day5-循环关键字
下一篇:WINDOWS 同步(Interlocked,InterlockedExchangeAdd,Slim读/写锁,WaitForSingleObject,CreateWaitableTimer等等)