本来反向代理加载速度就慢,想做个loading效果打发下加载时间。没想到加了之后更慢。光打开loading就要半天。所以弃用了。放这里给大家参考下。pc端效果正常,移动端会偏移。
效果图:
HTML:
<div class="loading" >
<div class="header w ">
<img class="head-sculpture" src="{% static 'dog1.gif' %}" alt="头像">
<div class="transparent">
<div class="self-evaluation">若不是因为喜欢,谁愿意当舔狗</div>
</div>
<div class="self-evaluation_son">舔狗,舔狗,舔到最后一无所有</div>
</div>
<img id="dogrun" src="{% static 'rundog4.gif' %}" alt="">
</div>
JS:
loading = document.querySelector('.header');
header = document.querySelector('.header');
odiv = document.querySelector('.transparent');
sdiv = document.querySelector('.self-evaluation');
dogrun = document.querySelector('#dogrun');
web_bg = document.querySelector('#web_bg');
nav = document.querySelector('.nav');
var timer = null;
clearInterval(timer); //作用见要点①
timer = setInterval(function () {
var speed = 4;
if (odiv.offsetLeft >= 600) { //判断对象边距 到达指定位移则关闭定时器
clearInterval(timer);
//loading.style.display = 'none';
//dogrun.style.display = 'none';
//web_bg.style.display = 'inline';
//nav.style.display = 'block';
//document.body.style.backgroundColor = '#FFFFFF'
} else {
odiv.style.left = odiv.offsetLeft + (speed) + 'px'; //将透明盒子向右移动
sdiv.style.marginRight = odiv.offsetLeft + speed - 4 + 'px';//增加与透明盒子的右边距,保持盒子相对静止。
dogrun.style.left = odiv.offsetLeft + speed - 60 + 'px';
}
}, 30);
CSS:
.loading{
height: 175px;
width: 600px;
margin: auto;
position:absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
}
.header{
height: 100px;
width: 600px;
float: top;
position:absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
background-color:dimgray;
border-radius:100px 25px 25px 100px;
}
.head-sculpture{
overflow: hidden;
position: absolute;
float: right;
height: 100px;
width: 100px;
z-index:3000;
border-radius:100px;
#background-image:url("dog1.gif");
}
.transparent{
float: right;
position: absolute;
height: 100%;
width: 600px;
overflow: hidden;
}
.self-evaluation{
background-color:hotpink;
height: 100px;
border-radius:100px 25px 25px 110px;
font-size: 18px;
letter-spacing:12px;
margin: 0 auto;
padding-top:35px;
padding-left:136px ;
padding-right: 35px;
padding-bottom:35px;
#padding: 35px 35px 35px 136px;
position: relative;
float: right;
top: 0;
bottom: 0;
width: 100%;
z-index:2000;
}
#dogrun{
position: absolute;
bottom: 0;
left: 0;
z-index:2500;
width: 110px;
height: 75px;
}
.self-evaluation_son{
font-size: 18px;
letter-spacing:12px;
margin: 0 auto;
padding-top:35px;
padding-left:136px ;
padding-right: 35px;
padding-bottom:35px;
#padding: 35px 35px 35px 136px;
#position: absolute;
float: right;
top: 0;
bottom: 0;
width: 100%;
z-index:1000;
}