js实现同一个页面多个渐变效果的方法


Posted in Javascript onApril 10, 2015

本文实例讲述了js实现同一个页面多个渐变效果的方法。分享给大家供大家参考。具体分析如下:

这里可实现5个元素中随便一个,鼠标移上去透明度渐渐增加,鼠标移出,透明度渐渐减小的效果。

要点一:

var speed = 0;
if(target>obj.alpha){
speed = 5;
}else{
speed = -5;
}

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

要点二:

for(i=0; i<runs_li.length; i++){
runs_li[i].timer = null;
runs_li[i].alpha = 30;
runs_li[i].onmouseover = function(){
startrun(this,100);
}
runs_li[i].onmouseout = function(){
startrun(this,30);
}
}

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

最后,上代码:

<!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,ul,li{margin:0; padding:0;}
#runs{width:300px; margin:10px auto;}
#runs li{width:80px; height:80px; background:#06c; list-style:none;
float:left; margin:10px; display:inline;
filter:alpha(opacity=30); opacity:0.3;}
</style>
<script>
window.onload = function(){
 var runs = document.getElementById("runs");
 var runs_li = runs.getElementsByTagName("li");
 var i=0; 
 for(i=0; i<runs_li.length; i++){
 runs_li[i].timer = null;
 runs_li[i].alpha = 30;
 runs_li[i].onmouseover = function(){
  startrun(this,100);
 }
 runs_li[i].onmouseout = function(){
  startrun(this,30);
 }
 }
}
function startrun(obj,target){
 clearInterval(obj.timer);
 obj.timer = setInterval(function(){
 var speed = 0;
 if(target>obj.alpha){
  speed = 5;
 }else{
  speed = -5;
 }
 
 if(obj.alpha == target){
  clearInterval(obj.timer);
 }else{
  obj.alpha = obj.alpha + speed;
  obj.style.filter = "alpha(opacity="+obj.alpha+")";
  obj.style.opacity = obj.alpha/100;
 }
 
 },30)
}
</script>
</head>
<body>
<ul id="runs">
 <li>1</li>
 <li>2</li>
 <li>3</li>
 <li>4</li>
 <li>5</li>
</ul>
</body>
</html>

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

Javascript 相关文章推荐
判断是否输入完毕再激活提交按钮
Jun 26 Javascript
在JavaScript中typeof的用途介绍
Apr 11 Javascript
jquery form 加载数据示例
Apr 21 Javascript
jQuery中width()方法用法实例
Dec 24 Javascript
js实现键盘Enter键提交表单的方法
May 27 Javascript
vuejs动态组件给子组件传递数据的方法详解
Sep 09 Javascript
mongoose中利用populate处理嵌套的方法
May 26 Javascript
详解vue-cli 2.0配置文件(小结)
Jan 14 Javascript
express.js中间件说明详解
Mar 19 Javascript
php结合js实现多条件组合查询
May 28 Javascript
Vue数据驱动表单渲染,轻松搞定form表单
Jul 19 Javascript
js实现漂亮的星空背景
Nov 01 Javascript
js实现缓冲运动效果的方法
Apr 10 #Javascript
js实现分享到随页面滚动而滑动效果的方法
Apr 10 #Javascript
js实现同一页面多个不同运动效果的方法
Apr 10 #Javascript
js实现类似jquery里animate动画效果的方法
Apr 10 #Javascript
js实现类似新浪微博首页内容渐显效果的方法
Apr 10 #Javascript
javascript中关于&amp;&amp; 和 || 表达式的小技巧分享
Apr 10 #Javascript
js简单的点击返回顶部效果实现方法
Apr 10 #Javascript
You might like
Laravel如何创建服务器提供者实例代码
2019/04/15 PHP
基于jQuery图片平滑连续滚动插件
2009/04/27 Javascript
分享20多个很棒的jQuery 文件上传插件或教程
2011/09/04 Javascript
Javascript的数组与字典用法与遍历对象的属性技巧
2012/11/07 Javascript
from 表单提交返回值用post或者是get方法实现
2013/08/21 Javascript
使用jQuery和Bootstrap实现多层、自适应模态窗口
2014/12/22 Javascript
JavaScript中的console.profile()函数详细介绍
2014/12/29 Javascript
分享自己用JS做的扫雷小游戏
2016/02/17 Javascript
js实现div在页面拖动效果
2016/05/04 Javascript
浅谈JavaScript中数组的增删改查
2016/06/20 Javascript
js自调用匿名函数的三种写法(推荐)
2016/08/19 Javascript
js 打开新页面在屏幕中间的实现方法
2016/11/02 Javascript
JavaScript交换两个变量值的七种解决方案
2016/12/01 Javascript
js实现文字跑马灯效果
2017/02/23 Javascript
JS二叉树的简单实现方法示例
2017/04/05 Javascript
JavaScript实现的仿新浪微博原生态输入字数即时检查功能【兼容IE6】
2017/09/26 Javascript
详解React-Router中Url参数改变页面不刷新的解决办法
2018/05/08 Javascript
微信小程序自定义组件传值 页面和组件相互传数据操作示例
2019/05/05 Javascript
JS判断数组里是否有重复元素的方法小结
2019/05/21 Javascript
element-plus一个vue3.xUI框架(element-ui的3.x 版初体验)
2020/12/02 Vue.js
JavaScript实现前端倒计时效果
2021/02/09 Javascript
Python中内置数据类型list,tuple,dict,set的区别和用法
2015/12/14 Python
Python对数据库操作
2016/03/28 Python
基于Python中capitalize()与title()的区别详解
2017/12/09 Python
关于 Python opencv 使用中的 ValueError: too many values to unpack
2019/06/28 Python
python用pip install时安装失败的一系列问题及解决方法
2020/02/24 Python
如何理解python面向对象编程
2020/06/01 Python
Python 多进程、多线程效率对比
2020/11/19 Python
python des,aes,rsa加解密的实现
2021/01/16 Python
详解H5本地储存Web Storage
2017/07/03 HTML / CSS
英国护肤品购物网站:Beauty Expert
2016/08/19 全球购物
白俄罗斯在线大型超市:e-dostavka.by
2019/07/25 全球购物
书香校园建设方案
2014/05/02 职场文书
董事长助理岗位职责
2015/02/11 职场文书
春秋淹城导游词
2015/02/11 职场文书
nginx内存池源码解析
2021/11/20 Servers