鼠标移上去透明度渐渐增加,鼠标移出,透明度渐渐减小。

关键代码:

1 var speed = 0;
2 if(target>obj.alpha){
3     speed = 5;
4 }else{
5     speed = -5;
6 }

根据目标值和当时值的对比,来决定是正向还是负向速度。

01 for(i=0; i < runs_li.length; i++){
02     runs_li[i].timer = null;
03     runs_li[i].alpha = 30;
04     runs_li[i].onmouseover = function(){
05         startrun(this,100);
06     }
07     runs_li[i].onmouseout = function(){
08         startrun(this,30);
09     }
10 }

给每一个元素加上各自的透明度值,各自的透明度变化分开。

全部代码:

01 <style>
02 #runs{width:300px; margin:10px auto;}
03 #runs li{width:80px; height:80px; background:#06c; list-style:none; float:left; margin:10px; display:inline; filter:alpha(opacity=30); opacity:0.3;}
04 </style>
05 <script>
06 window.onload = function(){
07   var runs = document.getElementById("runs");
08   var runs_li = runs.getElementsByTagName("li");
09   var i=0;
10   for(i=0; i<runs_li.length; i++){
11     runs_li[i].timer = null;
12     runs_li[i].alpha = 30;
13     runs_li[i].onmouseover = function(){
14       startrun(this,100);
15     }
16     runs_li[i].onmouseout = function(){
17       startrun(this,30);
18     }
19   }
20 }
21  
22 function startrun(obj,target){
23   clearInterval(obj.timer);
24   obj.timer = setInterval(function(){
25     var speed = 0;
26     if(target>obj.alpha){
27       speed = 5;
28     }else{
29       speed = -5;
30     }
31    
32     if(obj.alpha == target){
33       clearInterval(obj.timer);
34     }else{
35       obj.alpha = obj.alpha + speed;
36       obj.style.filter = "alpha(opacity="+obj.alpha+")";
37       obj.style.opacity = obj.alpha/100;
38     }
39  
40   },30)
41 }
42  
43 </script>
44  
45 <ul id="runs">
46   <li>简</li>
47   <li>明</li>
48   <li>现</li>
49   <li>代</li>
50   <li>魔</li>
51   <li>法</li>
52 </ul>

JavaScript渐变效果的实现的更多相关文章

  1. ArcGIS API for Javascript 图层切换渐变效果实现

    在一个WebGIS系统中往往要实现图形的切换,比如业务图层的切换,以及底图的切换等等,可以通过控制图层的可见性来实现.比如通过设置图层的opacity .visible来控制,前几天有网友聊天的时候提 ...

  2. Javascript,颜色渐变效果的处理

    在搭建博主博客的时候,寻思着做一些效果,看到菜单,就想是不是可以做一下颜色的渐变,增加一点动态的感觉.有个jquery的插件,效果相当不错,不过博主还是打算自立更生写一下,看看能不能实现. 下面就是博 ...

  3. Bootstrap JavaScript插件

      在bs3.X中,提供了12种JavaScript插件,分别是:动画过渡(Transition).模态弹窗(Modal).下拉菜单(Dropdown).滚动侦测(Scrollspy).选项卡(Tab ...

  4. [Bootstrap]7天深入Bootstrap(5)JavaScript插件

    在bs3.X中,提供了12种JavaScript插件,分别是:动画过渡(Transition).模态弹窗(Modal).下拉菜单(Dropdown).滚动侦测(Scrollspy).选项卡(Tab). ...

  5. JavaScript、Jquery选择题

    尚学堂Java EE软件工程师认证考试 试题库-选择题     一.    选择题(包括单选和双选) 1.B 在JavaScript中,以下变量命名非法的是(   )(选择一项) A. numb_1 ...

  6. JavaScript Table行定位效果

    作者:cloudgamer 时间: 2009-09-17 文档类型:原创 来自:蓝色理想 第 1 页 JavaScript Table行定位效果 [1] 第 2 页 JavaScript Table行 ...

  7. web前端--知识点,笔记叠加(javascript,jquery,html5+css3.0,ajax)

    函数传参列表,获取方法arguments的使用 function arg(){ var str = '总共传了'+arguments.length+'个参数\n'; for(var i=0;i< ...

  8. 记JavaScript的入门学习(一)

    2016年11月20日算是每天都会利用点时间去思考,去学习,接下来便是我学习JavaScript的前前后后,希望早日学完JavaScript和jQuery 之前学校毕业设计选择了一个如下图的题目 希望 ...

  9. 深入理解 JavaScript 事件循环(一)— event loop

    引言 相信所有学过 JavaScript 都知道它是一门单线程的语言,这也就意味着 JS 无法进行多线程编程,但是 JS 当中却有着无处不在的异步概念 .在初期许多人会把异步理解成类似多线程的编程模式 ...

随机推荐

  1. hadoop生态搭建(3节点)-06.hbase配置

    # http://archive.apache.org/dist/hbase/1.2.4/ # ==================================================== ...

  2. python学习之对象的三大特性

    在面向对象程序设计中,对象可以看做是数据(特性)以及由一系列可以存取.操作这些数据的方法所组成的集合.编写代码时,我们可以将所有功能都写在一个文件里,这样也是可行的,但是这样不利于代码的维护,你总不希 ...

  3. Leecode刷题之旅-C语言/python-26.移除元素

    /* * @lc app=leetcode.cn id=27 lang=c * * [27] 移除元素 * * https://leetcode-cn.com/problems/remove-elem ...

  4. 让CPU使用率正弦变化

    网络上流传一个面试题,说如何编程让CPU的使用率按照正弦方式变化 代码如下(运行环境Linux): #include <stdio.h> #include <stdlib.h> ...

  5. mybatis-generator自定义注释生成

    最近做的项目发现没有中文注释,故查找资料,特此记录. 本文所用的是基于mybatis-generator 1.3.2版本来完成的. mybatis-generator 自动生成的代码注释是很反人类的, ...

  6. 5.hbase表新增数据同步之add_peer

    一.前提主从集群之间能互相通讯: 二.在cluster1上(源集群):  1.查看集群已开启的peers hbase(main):011:0> list_peers PEER_ID CLUSTE ...

  7. NB-IOT的键值对

    1. 关于NB-IOT的软件开发,有一个功能,NB收到数据的时候可以唤醒处于低功耗下的MCU. 2. 2个键值对可以配置这个功能.使用键值对的方式. 3. 遇到的第一个问题,<config> ...

  8. 三种block

    block的实现原理是C语言的函数指针. 函数指针即函数在内存中的地址,通过这个地址可以达到调用函数的目的. Block是NSObject的子类,拥有NSObject的所有属性,所以block对象也有 ...

  9. 指纹识别人脸识别 iOS

    //1.判断iOS8及以后的版本 if([UIDevice currentDevice].systemVersion.doubleValue >= 8.0){ //从iPhone5S开始,出现指 ...

  10. mcrouter facebook 开源的企业级memcached代理

    原文地址:https://code.facebook.com/posts/296442737213493/introducing-mcrouter-a-memcached-protocol-route ...