使用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 相关文章推荐
javascript错误的认识不用关心内存管理
Dec 15 Javascript
jQuery 取值、赋值的基本方法整理
Mar 31 Javascript
兼容IE、firefox以及chrome的js获取时间(getFullYear)
Jul 04 Javascript
Javascript中的关键字和保留字整理
Oct 16 Javascript
Linux下为Node.js程序配置MySQL或Oracle数据库的方法
Mar 19 Javascript
前端js文件合并的三种方式推荐
May 19 Javascript
EditPlus中的正则表达式 实战(4)
Dec 15 Javascript
JS仿JQuery选择器功能
Mar 08 Javascript
Angular.JS去掉访问路径URL中的#号详解
Mar 30 Javascript
JavaScript之json_动力节点Java学院整理
Jun 29 Javascript
微信小程序实现滴滴导航tab切换效果
Jul 24 Javascript
javascript实现放大镜功能
Dec 09 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
Could not load type System.ServiceModel.Activation.HttpModule解决办法
2012/12/29 PHP
探讨:php中在foreach中使用foreach ($arr as &amp;$value) 这种类型的解释
2013/06/24 PHP
PHP 利用Mail_MimeDecode类提取邮件信息示例
2014/01/26 PHP
ThinkPHP 404页面的设置方法
2015/01/14 PHP
php使用COPY函数更新配置文件的方法
2015/06/18 PHP
php图片添加水印例子
2016/07/20 PHP
Jquery 设置标题的自动翻转
2009/10/03 Javascript
Firefox下提示illegal character并出现乱码的原因
2010/03/25 Javascript
seajs中模块的解析规则详解和模块使用总结
2014/03/12 Javascript
JavaScript动态提示输入框输入字数的方法
2015/07/27 Javascript
Jqgrid之强大的表格插件应用
2015/12/02 Javascript
js将滚动条滚动到指定位置的简单实现方法
2016/06/25 Javascript
JS遍历页面所有对象属性及实现方法
2016/08/01 Javascript
第一次接触神奇的Bootstrap菜单和导航
2016/08/01 Javascript
ReactNative页面跳转实例代码
2016/09/27 Javascript
JS简单生成由字母数字组合随机字符串示例
2018/05/25 Javascript
Vue使用watch监听一个对象中的属性的实现方法
2019/05/10 Javascript
element-ui 本地化使用教程详解
2019/10/28 Javascript
原生javascript制作贪吃蛇小游戏的方法分析
2020/02/26 Javascript
vue使用map代替Aarry数组循环遍历的方法
2020/04/30 Javascript
[27:08]完美世界DOTA2联赛PWL S2 SZ vs Rebirth 第二场 11.21
2020/11/23 DOTA
python的绘图工具matplotlib使用实例
2014/07/03 Python
对Python字符串中的换行符和制表符介绍
2018/05/03 Python
python 字典的打印实现
2019/09/26 Python
keras的三种模型实现与区别说明
2020/07/03 Python
详解CSS3 filter:drop-shadow滤镜与box-shadow区别与应用
2020/08/24 HTML / CSS
小程序canvas中文字设置居中锚点
2019/04/16 HTML / CSS
东南亚排名第一的服务市场:kaodim
2019/03/28 全球购物
可持续未来的时尚基础:Alternative Apparel
2019/05/06 全球购物
戴森西班牙官网:Dyson西班牙
2020/02/04 全球购物
总务岗位职责
2013/11/19 职场文书
保荐人的岗位职责
2013/11/19 职场文书
文化建设工作方案
2014/05/12 职场文书
小组口号大全
2014/06/09 职场文书
社区低保工作总结2015
2015/07/23 职场文书
《金肉人》米特&《航海王》阿鹤声优松岛实因胰脏癌去世 享寿81岁
2022/04/13 日漫