使用JavaScript触发过渡效果的方法


Posted in Javascript onJanuary 19, 2017

使用 :hover 和 :focus 这样的伪类,我们可以很方便的将元素从一个样式切换到另一个样式,而且切换是会有过渡效果。但有时我们想要使用 js 来驱动过渡(即在代码中触发过渡)也是可以实现的。

和普通过渡一样,先创建两个样式规则,一个是元素的初始状态,一个是过渡结束的状态。然后用 js 在合适的事机修改对应元素的样式即可。

下面以一个日夜景图片切换的样例演示:

使用JavaScript触发过渡效果的方法使用JavaScript触发过渡效果的方法

(1)日景和夜景是两张图片叠在一起的。夜景图初始透明度是0,覆盖在日景图上方。

(2)点击“看夜景”按钮,夜景图透明度逐渐从0过渡到1,看起来画面慢慢变成夜景。

(3)点击“看日景”按钮,夜景图透明度逐渐又从1过渡到0,看起来画面恢复成日景。

在线样例如下:

<!doctype html>
<html lang="en">
<head>
<title>hangge.com</title>
<style>
img {
  position:absolute;
  transition: opacity 5s;
  -webkit-transition: opacity 5s;
}
.solid {
  opacity: 1;
}
.transparent {
  opacity: 0;
}
</style>
<script>
  function toNight(){
      var nightImage = document.getElementById("nightImage");
      nightImage.className = "solid";
  }
  function toDay(){
      var nightImage = document.getElementById("nightImage");
      nightImage.className = "transparent";
  }
</script>
</head>
<body>
  <button onclick="toNight()">看夜景</button>
  <button onclick="toDay()">看日景</button>
  <div>
    <img src="day.png" alt="日景"/>
    <img src="night.png" alt="夜景" id="nightImage" class="transparent"/>
  </div>
</body>
</html>

以上所述是小编给大家介绍的使用JavaScript触发过渡效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
使用prototype.js进行异步操作
Feb 07 Javascript
JQUERY 浏览器判断实现函数
Aug 20 Javascript
jquery 全局AJAX事件使用代码
Nov 05 Javascript
js对文章内容进行分页示例代码
Mar 05 Javascript
Jquery 实现grid绑定模板
Jan 28 Javascript
最流行的Node.js精简型和全栈型开发框架介绍
Feb 26 Javascript
JS+CSS实现带关闭按钮DIV弹出窗口的方法
Feb 27 Javascript
JavaScript判断微信浏览器实例代码
Jun 13 Javascript
输入法的回车与消息发送快捷键回车的冲突解决方法
Aug 09 Javascript
jQuery中 $ 符号的冲突问题及解决方案
Nov 04 Javascript
JS去掉字符串前后空格或去掉所有空格的用法
Mar 25 Javascript
分析javascript中9 个常见错误阻碍你进步
Sep 18 Javascript
详解支持Angular 2的表格控件
Jan 19 #Javascript
原生JS实现几个常用DOM操作API实例
Jan 19 #Javascript
JS生成一维码(条形码)功能示例
Jan 19 #Javascript
EasyUi 打开对话框后控件赋值及赋值后不显示的问题解决办法
Jan 19 #Javascript
javascript中json基础知识详解
Jan 19 #Javascript
JavaScript实现垂直滚动条效果
Jan 18 #Javascript
JavaScript实现水平进度条拖拽效果
Jan 18 #Javascript
You might like
谷歌音乐搜索栏的提示功能php修正代码
2011/05/09 PHP
ThinkPHP使用UTFWry地址库进行IP定位实例
2014/04/01 PHP
Yii结合CKEditor实现图片上传功能
2014/06/13 PHP
常见PHP数据库解决方案分析介绍
2015/09/24 PHP
thinkphp ajaxfileupload实现异步上传图片的示例
2017/08/28 PHP
js控制web打印(局部打印)方法整理
2013/05/29 Javascript
js中单引号与双引号冲突问题解决方法
2013/10/04 Javascript
js中事件的处理与浏览器对象示例介绍
2013/11/29 Javascript
Ajax请求在数据量大的时候出现超时的解决方法
2014/02/27 Javascript
jquery图片滚动放大代码分享(2)
2015/08/28 Javascript
jquery在ie7下选择器的问题导致append失效的解决方法
2016/01/10 Javascript
jQuery模仿阿里云购买服务器选择购买时间长度的代码
2016/04/29 Javascript
Chrome不支持showModalDialog模态对话框和无法返回returnValue问题的解决方法
2016/10/30 Javascript
利用Query+bootstrap和js两种方式实现日期选择器
2017/01/10 Javascript
jquery表单验证实例仿Toast提示效果
2017/03/03 Javascript
JavaScript 数据类型详解
2017/03/13 Javascript
JS使用ActiveXObject实现用户提交表单时屏蔽敏感词功能
2017/06/20 Javascript
关于预加载InstantClick的问题解决方法
2017/09/12 Javascript
JS实现获取汉字首字母拼音、全拼音及混拼音的方法
2017/11/14 Javascript
详解ES6 Fetch API HTTP请求实用指南
2018/11/14 Javascript
jquery操作checkbox的常用方法总结【附测试源码下载】
2019/06/10 jQuery
javascript面向对象程序设计实践常用知识点总结
2019/07/29 Javascript
vue data变量相互赋值后被实时同步的解决步骤
2020/08/05 Javascript
python中查找excel某一列的重复数据 剔除之后打印
2013/02/10 Python
Python3实现的腾讯微博自动发帖小工具
2013/11/11 Python
Python读写及备份oracle数据库操作示例
2018/05/17 Python
详解pytorch 0.4.0迁移指南
2019/06/16 Python
Python计算两个矩形重合面积代码实例
2019/09/16 Python
Python3 把一个列表按指定数目分成多个列表的方式
2019/12/25 Python
Python3 读取Word文件方式
2020/02/13 Python
树莓派4B安装Tensorflow的方法步骤
2020/07/16 Python
Python经典五人分鱼实例讲解
2021/01/04 Python
几个判断型的面试题
2012/07/03 面试题
保险经纪人求职信
2014/03/11 职场文书
法律意见书范文
2015/05/20 职场文书
2019年圣诞节祝福语集锦
2019/12/25 职场文书