事件补充
事件
onload事件:当网页中的所有资源都加在完成之后执行这个事件
通常是将script标签放到head标签中的时候使用。因为放在head中默认是获取不到body中的内容的,但是有了这个事件后,就可以了。
window.onload = function(){
console.log("当网页中所有资源加载完成才打印");
}
onunload事件:当浏览器关闭的时候触发这个事件
只有在ie浏览器中能看到效果
window.onunload=function(){
alert("浏览器要关闭了");
}
onscroll 滚动事件:当网页滚动条的位置发生改变的时候触发这个事件
此事件浏览器需要有滚动条
window.onscroll = function () {
console.log('浏览器滚动了')
}
resize 浏览器窗口改变事件
window.onresize = function(){
// 当浏览器的窗口大小发生改变的时候触发这个事件
}
浏览器滚动的距离
获取文档向下滚动的距离,以下两个都可以:
- document.documentElement.scrollTop
- document.body.scrollTop
window.onscroll = function () {
var t = document.documentElement.scrollTop;
console.log(t);
var t1 = document.body.scrollTop;
console.log(t1);
}
这两个的区别在于当前文档有没有 doctype ,有就用 document.documentElement.scrollTop ,没有 就用 document.body.scrollTop
获取页面向右滚动的距离:
-
document.body.scrollLeft
-
document.documentElement.scrollLeft
使用方法同上
这两个方法在IE和edge下有兼容问题
使用兼容写法:
var t = document.documentElement.scrollTop || document.body.scrollTop;
var t = document.documentElement.scrollLeft || document.body.scrollLeft;
滚动距离可以赋值,如果给向上的滚动距离赋值为0,就实现了回到顶部的效果;但效果时瞬间返回,体验感不好。
使用定时器,让回到顶部拥有动画效果
<style>
#backTop{
display:none;
width:80px;
text-align: center;
height: 30px;
line-height:30px;
border:3px solid #000;
position:fixed;
top:500px;
right:50px;
}
</style>
<body>
<div style="width: 20px;">
一类是以机场为主导,通过与其他机场航空公司或者第三方合作的方式,为在本机场中转的旅客提供服务;
第二类是以航司为主导,以代码共享、 通程联运和合作联营的方式,在既定的中转机场,为旅客提供跨航司的行李直挂服务。
</div>
<span id="backTop"> 回到顶部 </span>
</body>
<script type="text/javascript">
window.onscroll=function(){
var t = document.documentElement.scrollTop;
console.log(t);
if(t>=600){
backTop.style.display='block';
}else{
backTop.style.display='none';
}
}
var speed = 1;
backTop.onclick=function(){
var tt = document.documentElement.scrollTop;
setInterval(function(){
tt -= speed;
document.documentElement.scrollTop = tt;
},1);
}
</script>
异步操作
异步和同步的概念
张三叫李四一起去吃饭,张三说他还有作业没做完,让李四先去,李四去吃饭,张三在写作业,这两个人做的事情不 一样,但是在同一时间段内,两个人的事情在同时做,这就是异步。
张三叫李四一起去吃饭,张三说他还有作业没做完,让李四等一下,李四就等张三做完作业后两个人才一起去吃饭,这就是同步。
同步的操作需要等待,执行起来是有顺序可循的;异步的操作不需要等待,两件事情是同行进行的。
我们平常写的代码都是同步代码,定时器我们接触到的第一个异步代码。
js的异步操作,是在所有同步代码执行完成以后才执行异步代码
一般情况代码是按顺序执行的,上一行代码执行结束之前,下一行代码一直在等待,这是同步机制
标签:function,异步,同步,浏览器,documentElement,补充,scrollTop,document From: https://www.cnblogs.com/chengkongfeiniao/p/16583691.html