博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
css3 动画的播放、暂停和重新开始
阅读量:4308 次
发布时间:2019-06-06

本文共 2031 字,大约阅读时间需要 6 分钟。

播放

  先在@keyframes中创建动画,之后把它捆绑到某个选择器,就可以产生动画效果。

html

css

@keyframes mymove {    0% {      margin-left: 0px;    }    50% {      margin-left: 400px;    }    100% {      margin-left: 0px;    }  }.box {    margin: 50px 0;    width: 100px;    height: 100px;    background-color: #5578a2;    animation: mymove 5s infinite ease;  }

暂停

  我们播放动画时,如要暂停动画,就要用到animation-play-state这个属性。animation-play-state属性有两个值:

paused: 暂停动画;running: 继续播放动画;

当然去掉animation-play-state,也可以继续播放动画。

重新开始

  如果要重新开始动画,加载一个相同的动画,不同名字,可以达到重新开始动画的效果。

效果:

效果图

代码部分:

html

css

@keyframes mymove {    0% {      margin-left: 0px;    }    50% {      margin-left: 400px;    }    100% {      margin-left: 0px;    }  }  @keyframes mymove1 {    0% {      margin-left: 0px;    }    50% {      margin-left: 400px;    }    100% {      margin-left: 0px;    }  }  .box {    margin: 50px 0;    width: 100px;    height: 100px;    background-color: #5578a2;  }  .play {    animation: mymove 5s infinite ease;  }  .restart {    animation: mymove1 5s infinite ease;  }  .pause {    animation-play-state: paused;  }

js

var play = document.getElementById('play'),    pause = document.getElementById('pause'),    restart = document.getElementById('restart'),    text = document.getElementById('text'),    box = document.getElementById('box');  pause.addEventListener('click', function() {    if (box.classList.contains('play')) {      box.className = 'pause play box';    } else {      box.className = 'pause restart box';    }    text.innerHTML = this.value;  });  play.addEventListener('click', function() {    if (box.classList.contains('play')) {      box.className = 'play box';    } else {      box.className = 'restart box';    }    text.innerHTML = this.value;  });  restart.addEventListener('click', function() {    if (box.classList.contains('play')) {      box.className = 'restart box';    } else {      box.className = 'play box';    }    text.innerHTML = this.value;  });

转载于:https://www.cnblogs.com/yangrenmu/p/7085815.html

你可能感兴趣的文章
一个异步网络请求的坑:关于NSURLConnection和NSRunLoopCommonModes
查看>>
iOS 如何放大按钮点击热区
查看>>
ios设备唯一标识获取策略
查看>>
获取推送通知的DeviceToken
查看>>
Could not find a storyboard named 'Main' in bundle NSBundle
查看>>
CocoaPods安装和使用教程
查看>>
Beginning Auto Layout Tutorial
查看>>
block使用小结、在arc中使用block、如何防止循环引用
查看>>
iPhone开发学习笔记002——Xib设计UITableViewCell然后动态加载
查看>>
iOS开发中遇到的问题整理 (一)
查看>>
Swift code into Object-C 出现 ***-swift have not found this file 的问题
查看>>
为什么你的App介绍写得像一坨翔?
查看>>
RTImageAssets插件--@3x可自动生成@2x图片
查看>>
iOS开发的一些奇巧淫技
查看>>
常浏览的博客和网站
查看>>
Xcode 工程文件打开不出来, cannot be opened because the project file cannot be parsed.
查看>>
iOS在Xcode6中怎么创建OC category文件
查看>>
5、JavaWeb学习之基础篇—标签(自定义&JSTL)
查看>>
8、JavaWEB学习之基础篇—文件上传&下载
查看>>
reRender属性的使用
查看>>