使用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 相关文章推荐
firefox中用javascript实现鼠标位置的定位
Jun 17 Javascript
基于jQuery的输入框无值自动显示指定数据的实现代码
Jan 24 Javascript
设为首页加入收藏兼容360/火狐/谷歌/IE等主流浏览器的代码
Mar 26 Javascript
extjs关于treePanel+chekBox全部选中以及清空选中问题探讨
Apr 02 Javascript
js类定义函数时用prototype与不用的区别示例介绍
Jun 10 Javascript
jQuery实现字符串全部替换的方法【推荐】
Mar 09 Javascript
vue父组件向子组件传递多个数据的实例
Mar 01 Javascript
使用Nuxt.js改造已有项目的方法
Aug 07 Javascript
jQuery常见的遍历DOM操作详解
Sep 05 jQuery
js实现前面自动补全位数的方法
Oct 10 Javascript
JavaScript制作3D旋转相册
Aug 02 Javascript
Javascript实现鼠标点击冒泡特效
Dec 24 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
escape unescape的php下的实现方法
2007/04/27 PHP
php 无限级分类学习参考之对ecshop无限级分类的解析 带详细注释
2010/03/23 PHP
来自phpguru得Php Cache类源码
2010/04/15 PHP
PHP仿qq空间或朋友圈发布动态、评论动态、回复评论、删除动态或评论的功能(上)
2017/05/26 PHP
laravel添加前台跳转成功页面示例
2019/10/22 PHP
JavaScript脚本性能的优化方法
2007/02/02 Javascript
Javascript写了一个清除“logo1_.exe”的杀毒工具(可扫描目录)
2007/02/09 Javascript
JavaScript 密码强度判断代码
2009/09/05 Javascript
Javascript 遮罩层和加载效果代码
2013/08/01 Javascript
jQuery对Select的操作大集合(收藏)
2013/12/28 Javascript
轻松实现javascript数据双向绑定
2015/11/11 Javascript
使用getBoundingClientRect方法实现简洁的sticky组件的方法
2016/03/22 Javascript
用AngularJS来实现监察表单按钮的禁用效果
2016/11/02 Javascript
AngularJS中指令的四种基本形式实例分析
2016/11/22 Javascript
bootstrap daterangepicker汉化以及扩展功能
2017/06/15 Javascript
原生JavaScrpit中异步请求Ajax实现方法
2017/11/03 Javascript
vue双向数据绑定知识点总结
2018/04/18 Javascript
webpack打包非模块化js的方法
2018/10/24 Javascript
vue-cli history模式实现tomcat部署报404的解决方式
2019/09/06 Javascript
微信内置开发 iOS修改键盘换行为搜索的解决方案
2019/11/06 Javascript
在Python的web框架中配置app的教程
2015/04/30 Python
利用Python循环(包括while&amp;for)各种打印九九乘法表的实例
2017/11/06 Python
python使用turtle库绘制时钟
2020/03/25 Python
利用Pandas读取文件路径或文件名称包含中文的csv文件方法
2018/07/04 Python
基于python的socket实现单机五子棋到双人对战
2020/03/24 Python
python使用re模块爬取豆瓣Top250电影
2020/10/20 Python
使用Python Tkinter实现剪刀石头布小游戏功能
2020/10/23 Python
css3 伪元素和伪类选择器详解
2014/09/04 HTML / CSS
phpquery中文手册
2021/03/18 PHP
美体小铺奥地利官方网站:The Body Shop奥地利
2019/04/11 全球购物
Android面试题及答案
2015/09/04 面试题
幼儿教师国培感言
2014/02/19 职场文书
护理专业毕业生自我鉴定总结
2014/03/24 职场文书
小区门卫岗位职责范本
2014/08/24 职场文书
高三复习计划
2015/01/19 职场文书
微信告警的zabbix监控系统 监控整个NGINX集群
2022/04/18 Servers