AutoCAD 3DMAX C语言 Pro/E UG JAVA编程 PHP编程 Maya动画 Matlab应用 Android
Photoshop Word Excel flash VB编程 VC编程 Coreldraw SolidWorks A Designer Unity3D
 首页 > JavaScript

原生JS实现圣旨卷轴展开效果

51自学网 http://www.51zixue.net
卷轴展开效果,js,卷轴展开动画效果

在其他网站看见类似效果,但代码有400多行且看不懂,我用60多行的代码给予实现。

实现原理:(1)利用绝对定位固定好起始位置;(2)利用遮罩将右轴右侧的部分遮住;(3)让右轴和遮罩同时同速度向右运动!

效果图:

代码如下:

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>诏书</title> <style type="text/css"> * {  margin: 0;  padding: 0; } #animate {  margin: 40px auto;  width: 495px;  height: 150px;  position: relative;  overflow: hidden; } #back {  width: 495px;  height: 150px;  position: absolute;  left: 0;  top: 10px;  background: url(http://cdn.attach.qdfuns.com/notes/pics/201703/04/191654mcfqzdfrxann5551.png) no-repeat; } #left {  position: absolute;  left: 0; } #right {  position: absolute;  left: 16px; } #mark {  position: absolute;  left: 44px; } </style></head><body><div id="animate"> <div id="back"><img src="http://cdn.attach.qdfuns.com/notes/pics/201703/04/191214ug6h47d81jyfy6vh.png"/></div> <div id="left"><img src="http://cdn.attach.qdfuns.com/notes/pics/201703/04/191236gldigxmxg2zlh9s7.png"/></div> <div id="right"><img src="http://cdn.attach.qdfuns.com/notes/pics/201703/04/191244uhavf49l1zw440cv.png"/></div> <div id="mark"><img src="http://cdn.attach.qdfuns.com/notes/pics/201703/04/191254kfbz2tjupc1jigbb.png"/></div></div></body><script> var animate=document.getElementById("animate"); var right = document.getElementById("right"); var mark = document.getElementById("mark"); var timer = setInterval(function () { var right1=getComputedStyle(right).left; var mark1=getComputedStyle(mark).left; if(parseFloat(right1)>=447){  right1=447+"px";  clearInterval(timer); } right.style.left=(parseFloat(right1)+10)+"px"; mark.style.left=(parseFloat(mark1)+10)+"px"; }, 100)</script></html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持51zixue.net!


卷轴展开效果,js,卷轴展开动画效果  
上一篇:Bootstrap输入框组件简单实现代码  下一篇:js中setTimeout的妙用--防止循环超时