这篇文章将为大家详细讲解有关如何使用原生JS实现圣旨卷轴展开效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
实现原理:(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/191214ug6h57d81jyfy6vh.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>
关于“如何使用原生JS实现圣旨卷轴展开效果”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。