当前位置: 首页 > article >正文

【原生js案例】移动端如何实现页面的入场和出场动画

好的css动画,能给用户体验带来很大的提升,同时也能增加app的趣味性,给人眼前一亮的感觉。那如何实现这种全屏的弹窗入场和退场的动画

实现效果

请添加图片描述

代码实现

  • UI样式美化
#musicDetails{
   width: 100%;
   height: 100%;
   top:0;
   left:0;
   position: absolute;
   background: url(./img/detailsBg.jpg) no-repeat;
   background-size: cover;
   z-index: 99;
   background-position: bottom;
 }
  • html结构
<div id="musicDetails">
   <div class="details_title">
    <div  class="details_name"><span id="details_songName">异形人</span><span id="details_singerName">李建</span></div>
    <span id="details_tips" class="details_tips"></span>
   </div>
   <div class="details_lyric"></div>
   <div class="details_audio">
       <div class="details_audioAll">
           <div class="details_audioPro">
               <div class="details_audioProUp"></div>
               <div class="details_audioProBar"></div>
           </div>
           <div class="details_nowTime">00:00</div>
           <div class="details_allTime">04:32</div>
           <div class="details_play"></div>
           <div class="details_pre"></div>
           <div class="details_next"></div>
       </div>
    </div>
    <ul class="details_btn">
      <li class="active"></li>
      <li></li>
    </ul>
  </div>
  • 核心业务逻辑实现

    也就是点击按钮,使用js实现css3translate动画

function bind(){
 $details_tips.on(touchstart,function(){
    slideDown()
  })
}

function slideUp(){
  $musicDetails.css("transition",".5s")
  $musicDetails.css("transform",`translate3d(0,0px,0)`)
  // 修改详情页面的歌名和歌手名
  details_songName.text(list_audioTitle.text())
  details_singerName.text(list_audioName.text())


}
function slideDown(){
  $musicDetails.css("transform",`translate3d(0,${viewHeight}px,0)`)
}

这样我们就实现了详情页面的显示和隐藏的弹出动画


http://www.kler.cn/a/447077.html

相关文章:

  • React简单了解
  • python 曲线拟合,曲线拟合交点
  • jmeter 接口性能测试 学习笔记
  • DataOps驱动数据集成创新:Apache DolphinScheduler SeaTunnel on Amazon Web Services
  • 汽车IVI中控开发入门及进阶(三十九):ADAS的车道线检测
  • 动态规划-part1
  • 了解cuda的统一内存
  • 复习打卡大数据篇——Apache Hadoop
  • leetcode之hot100---240搜索二维矩阵II(C++)
  • 周末总结(2024/12/21)
  • Apache solr XML 实体注入漏洞
  • .NET 8 获取CPU序列号和主板序列号异常问题
  • 2110 加分二叉树
  • 重拾设计模式--组合模式
  • Redis存在安全漏洞
  • MyBatis 的优缺点
  • 【中标麒麟服务器操作系统实例分享】java应用DNS解析异常分析及处理
  • 前端yarn工具打包时网络连接问题排查与解决
  • Hadoop实现WordCount详解
  • HTTP请求的奇幻旅程:从发起至响应的全方位探索
  • 算法 计算大的长方形容器中,存放一排小长形容器,计算出小长形容器中最后一个元素的x坐标的位置的实现方法
  • linux-----进程execl簇函数
  • mysql的事务和存储引擎+备份
  • Audiocraft智能音频和音乐生成工具部署及使用
  • C# OpenCV机器视觉:图像平滑
  • STM32HAL I2C函数