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

发布时间 - 2026-01-10 23:27:35    点击率:

在其他网站看见类似效果,但代码有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>

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


# 卷轴展开效果  # js  # 卷轴展开动画效果  # 自己写了一个展开和收起的多更能型的js效果  # js实现div层缓慢收缩与展开的方法  # JS 简单展开关闭切换代码  # JS实现鼠标点击展开或隐藏表格行的方法  # 原生Js与jquery的多组处理  # 仅展开一个区块的折叠效果  # js实现简单折叠、展开菜单的方法  # 一个封装js代码-----展开收起效果示例  # js实现点击向下展开的下拉菜单效果代码  # 用javascript 控制表格行的展开和隐藏的代码  # javascript实现圣旨卷轴展开效果(代码分享)  # 不懂  # 我用  # 且看  # animate  # padding  # auto  # px  # title  # UTF  # type  # margin  # css  # width  # hidden  # overflow  # absolute  # top  # left  # height  # relative 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 零服务器AI建站解决方案:快速部署与云端平台低成本实践  如何在景安云服务器上绑定域名并配置虚拟主机?  Laravel队列由Redis驱动怎么配置_Laravel Redis队列使用教程  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  JS经典正则表达式笔试题汇总  如何快速搭建高效服务器建站系统?  Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录  Laravel事件监听器怎么写_Laravel Event和Listener使用教程  Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控  Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践  谷歌浏览器下载文件时中断怎么办 Google Chrome下载管理修复  如何快速生成凡客建站的专业级图册?  Laravel怎么实现验证码功能_Laravel集成验证码库防止机器人注册  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  Laravel如何使用Livewire构建动态组件?(入门代码)  如何用VPS主机快速搭建个人网站?  HTML5空格和margin有啥区别_空格与外边距的使用场景【说明】  高端智能建站公司优选:品牌定制与SEO优化一站式服务  Laravel路由怎么定义_Laravel核心路由系统完全入门指南  HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】  如何在Windows环境下新建FTP站点并设置权限?  为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】  湖南网站制作公司,湖南上善若水科技有限公司做什么的?  Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】  Laravel Admin后台管理框架推荐_Laravel快速开发后台工具  laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法  MySQL查询结果复制到新表的方法(更新、插入)  Win11怎么设置虚拟桌面 Win11新建多桌面切换操作【技巧】  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  原生JS获取元素集合的子元素宽度实例  Android自定义控件实现温度旋转按钮效果  如何在香港服务器上快速搭建免备案网站?  Laravel如何使用.env文件管理环境变量?(最佳实践)  Python3.6正式版新特性预览  Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  消息称 OpenAI 正研发的神秘硬件设备或为智能笔,富士康代工  Laravel如何使用查询构建器?(Query Builder高级用法)  Laravel怎么清理缓存_Laravel optimize clear命令详解  如何打造高效商业网站?建站目的决定转化率  个人摄影网站制作流程,摄影爱好者都去什么网站?  香港服务器WordPress建站指南:SEO优化与高效部署策略  edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】  UC浏览器如何切换小说阅读源_UC浏览器阅读源切换【方法】  Windows Hello人脸识别突然无法使用  Laravel如何生成API文档?(Swagger/OpenAPI教程)  JavaScript中的标签模板是什么_它如何扩展字符串功能  专业商城网站制作公司有哪些,pi商城官网是哪个?  如何使用 jQuery 正确渲染 Instagram 风格的标签列表  如何在IIS中新建站点并配置端口与物理路径?