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


Posted in Javascript onMarch 06, 2017

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

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

效果图:

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

代码如下:

<!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>

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

Javascript 相关文章推荐
jQuery '行 4954 错误: 不支持该属性或方法' 的问题解决方法
Jan 19 Javascript
Jquery模仿Baidu、Google搜索时自动补充搜索结果提示
Dec 26 Javascript
javascript 处理null及null值示例
Jun 09 Javascript
DOM 事件流详解
Jan 20 Javascript
全面解析jQuery $(document).ready()和JavaScript onload事件
Jun 08 Javascript
JS中sort函数排序用法实例分析
Jun 16 Javascript
详解在微信小程序的JS脚本中使用Promise来优化函数处理
Mar 06 Javascript
详解JS浏览器事件循环机制
Mar 27 Javascript
微信小程序点餐系统开发常见问题汇总
Aug 06 Javascript
javascript设计模式 ? 访问者模式原理与用法实例分析
Apr 26 Javascript
vue中element 的upload组件发送请求给后端操作
Sep 07 Javascript
javascript实现简单留言板案例
Feb 09 Javascript
js中setTimeout的妙用--防止循环超时
Mar 06 #Javascript
Bootstrap表单简单实现代码
Mar 06 #Javascript
微信小程序scroll-view实现横向滚动和上拉加载示例
Mar 06 #Javascript
Js自动截取字符串长度,添加省略号(……)的实现方法
Mar 06 #Javascript
Bootstrap显示与隐藏简单实现代码
Mar 06 #Javascript
jQuery时间验证和转换为标准格式的时间格式
Mar 06 #Javascript
Bootstrap导航中表单简单实现代码
Mar 06 #Javascript
You might like
php函数之子字符串替换&amp;#65279; str_replace
2011/03/23 PHP
php设计模式 Strategy(策略模式)
2011/06/26 PHP
PHP解决URL中文GBK乱码问题的两种方法
2014/06/03 PHP
PHP递归复制、移动目录的自定义函数分享
2014/11/18 PHP
完整删除ecshop中获取店铺信息的API
2014/12/24 PHP
php把大写命名转换成下划线分割命名
2015/04/27 PHP
PHP易混淆知识整理笔记
2015/09/24 PHP
深入理解PHP内核(二)之SAPI探究
2015/11/10 PHP
PHP getName()函数讲解
2019/02/03 PHP
在IE中调用javascript打开Excel的代码(downmoon原作)
2007/04/02 Javascript
IE8下Jquery获取select选中的值post到后台报错问题
2014/07/02 Javascript
javascript框架设计读书笔记之模块加载系统
2014/12/02 Javascript
使用jQuery和Bootstrap实现多层、自适应模态窗口
2014/12/22 Javascript
解析JavaScript中的字符串类型与字符编码支持
2016/06/24 Javascript
js设置文字颜色的方法示例
2016/12/30 Javascript
JavaScript上传文件时不用刷新页面方法总结(推荐)
2017/08/15 Javascript
jQuery+Cookie实现切换皮肤功能【附源码下载】
2018/03/25 jQuery
基于Vue插入视频的2种方法小结
2019/04/02 Javascript
浅谈Vue CLI 3结合Lerna进行UI框架设计
2019/04/14 Javascript
vue 动态组件用法示例小结
2020/03/06 Javascript
Vue实现仿iPhone悬浮球的示例代码
2020/03/13 Javascript
python调用shell的方法
2013/11/20 Python
在Python中使用sort()方法进行排序的简单教程
2015/05/21 Python
Python编程实现使用线性回归预测数据
2017/12/07 Python
Python的地形三维可视化Matplotlib和gdal使用实例
2017/12/09 Python
如何在Django中设置定时任务的方法示例
2019/01/18 Python
对于Python深浅拷贝的理解
2019/07/29 Python
Python连接HDFS实现文件上传下载及Pandas转换文本文件到CSV操作
2020/06/06 Python
Pyinstaller加密打包应用的示例代码
2020/06/11 Python
加拿大租车网站:Enterprise Rent-A-Car
2018/07/26 全球购物
荷兰街头时尚之家:Funkie House
2019/03/18 全球购物
浅谈react路由传参的几种方式
2021/03/23 Javascript
安全教育演讲稿
2014/05/09 职场文书
2014年教师节红领巾广播稿
2014/09/10 职场文书
导游词之蜀山胜景瓦屋山
2019/11/29 职场文书
如何使用pdb进行Python调试
2021/06/30 Python