js实现透明度渐变效果的方法


Posted in Javascript onApril 10, 2015

本文实例讲述了js实现透明度渐变效果的方法。分享给大家供大家参考。具体分析如下:

这里可实现一开始元素的透明度是30,鼠标移上的时候,透明度慢慢增加,到透明度100停止。鼠标移出,透明度慢慢减少,减少到30的效果。

要点一:因为无法直接获取和改变透明度的值,可以把透明度值赋给一个变量,让变量变化,最后把变量的值再赋给元素的透明值。

var alpha=30;

要点二:判断目标值和目前透明值,来判定是正向速度还是负向速度。

if(target > alpha){
speed = 2;
}else{
speed = -2;
}

要点三:如果透明值达到目标值,关掉定时器,否则透明值继续变化。最后把值赋给元素,因为透明度有兼容问题,所以要写上两个写法。

if(alpha == target){
clearInterval(timer);
}
else{
alpha = alpha + speed;
run.style.filter = 'alpha(opacity='+alpha+')';
run.style.opacity = alpha/100;
document.title = alpha;
}

最后,上代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>无标题文档</title>
<style>
body{margin:0; padding:0;}
#run{width:100px; height:100px; background:#06c;
position:absolute; border:1px solid #000;
opacity:0.3; filter:alpha(opacity=30);}
</style>
<script>
window.onload = function(){
 var run = document.getElementById("run");
 var btn = document.getElementById("btn");
 var speed = 1;
 var timer = null;
 var alpha=30;
 run.onmouseover = function(){
  startrun(100);
 }
 run.onmouseout = function(){
  startrun(30);
 }
 function startrun(target){
  clearInterval(timer);
  timer = setInterval(function(){
   if(target > alpha){
    speed = 2;
   }else{
    speed = -2;
   }
   if(alpha == target){
    clearInterval(timer);
   }
   else{
    alpha = alpha + speed;
    run.style.filter = 'alpha(opacity='+alpha+')';
    run.style.opacity = alpha/100;
    document.title = alpha;
   }
  },30)
 }
}
</script>
</head>
<body>
<div id="run"></div>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
用js实现控制内容的向上向下滚动效果
Jun 26 Javascript
jQuery当鼠标悬停时放大图片的效果实例
Jul 03 Javascript
如何改进javascript代码的性能
Apr 02 Javascript
JavaScript去除数组里重复值的方法
Jul 13 Javascript
JS实现弹性漂浮效果的广告代码
Sep 02 Javascript
jQuery+ajax+asp.net获取Json值的方法
Jun 08 Javascript
js 获取本地文件及目录的方法(推荐)
Nov 10 Javascript
Bootstrap Search Suggest使用例子
Dec 21 Javascript
JS实现双击内容变为可编辑状态
Mar 03 Javascript
深入剖析Node.js cluster模块
May 23 Javascript
详解Vue中组件传值的多重实现方式
Aug 16 Javascript
vue使用require.context实现动态注册路由
Dec 25 Vue.js
js实现同一页面多个运动效果的方法
Apr 10 #Javascript
js实现同一个页面多个渐变效果的方法
Apr 10 #Javascript
js实现缓冲运动效果的方法
Apr 10 #Javascript
js实现分享到随页面滚动而滑动效果的方法
Apr 10 #Javascript
js实现同一页面多个不同运动效果的方法
Apr 10 #Javascript
js实现类似jquery里animate动画效果的方法
Apr 10 #Javascript
js实现类似新浪微博首页内容渐显效果的方法
Apr 10 #Javascript
You might like
19个Android常用工具类汇总
2014/12/30 PHP
PHP文件与目录操作示例
2016/12/24 PHP
PHP实现统计所有字符在字符串中出现次数的方法
2017/10/17 PHP
PHP性能测试工具xhprof安装与使用方法详解
2018/04/29 PHP
在JavaScript中遭遇级联表达式陷阱
2007/03/08 Javascript
javascript SocialHistory 检查访问者是否访问过某站点
2008/08/02 Javascript
jQuery中noConflict()用法实例分析
2015/02/08 Javascript
JS实现文档加载完成后执行代码
2015/07/09 Javascript
jquery实现简洁文件上传表单样式
2015/11/02 Javascript
javascript图片滑动效果实现
2021/01/28 Javascript
AngularJS整合Springmvc、Spring、Mybatis搭建开发环境
2016/02/25 Javascript
JavaScript基于原型链的继承
2016/06/22 Javascript
详谈js使用in和hasOwnProperty获取对象属性的区别
2017/04/25 Javascript
nodejs 子进程正确的打开方式
2017/07/03 NodeJs
js导出Excel表格超出26位英文字符的解决方法ES6
2017/11/15 Javascript
详解vue mixins和extends的巧妙用法
2017/12/20 Javascript
javascript少儿编程关于返回值的函数内容
2018/05/27 Javascript
vue+webpack dev本地调试全局样式引用失效的解决方案
2019/11/12 Javascript
vue.js自定义组件实现v-model双向数据绑定的示例代码
2020/01/08 Javascript
使用JavaScript实现贪吃蛇游戏
2020/09/29 Javascript
javascript实现拼图游戏
2021/01/29 Javascript
Python画图学习入门教程
2016/07/01 Python
Python将多个excel文件合并为一个文件
2018/01/03 Python
浅析Python 3 字符串中的 STR 和 Bytes 有什么区别
2018/10/14 Python
python3读取图片并灰度化图片的四种方法(OpenCV、PIL.Image、TensorFlow方法)总结
2019/07/04 Python
Python统计文本词汇出现次数的实例代码
2020/02/27 Python
Jupyter notebook设置背景主题,字体大小及自动补全代码的操作
2020/04/13 Python
CSS3实现可翻转的hover效果
2018/05/23 HTML / CSS
css3使用animation属性实现炫酷效果(推荐)
2020/02/04 HTML / CSS
Banggood官网:面向全球客户的综合商城
2017/04/19 全球购物
以实惠的价格轻松租车,免费取消:Easyrentcars
2019/07/16 全球购物
澳大利亚在线奢侈品时尚零售平台:Azura Runway
2021/01/13 全球购物
在C语言中实现抽象数据类型什么方法最好
2014/06/26 面试题
2014三八妇女节活动总结范文四篇
2014/03/09 职场文书
竞选班干部演讲稿500字
2014/08/20 职场文书
2016年春季运动会加油稿
2015/07/22 职场文书