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 相关文章推荐
基于jQuery的动态增删改查表格信息,可左键/右键提示(原创自Zjmainstay)
Jul 31 Javascript
JS匀速运动演示示例代码
Nov 26 Javascript
28个常用JavaScript方法集锦
Jan 14 Javascript
微信小程序(六):列表上拉加载下拉刷新示例
Jan 13 Javascript
JS+HTML5 FileReader对象用法示例
Apr 07 Javascript
JavaScript数据类型的存储方法详解
Aug 25 Javascript
vue cli 全面解析
Feb 28 Javascript
layUI实现三级导航菜单效果
Jul 26 Javascript
vue悬浮可拖拽悬浮按钮的实例代码
Aug 20 Javascript
vue.js实现二级菜单效果
Oct 19 Javascript
d3.js实现图形拖拽
Dec 19 Javascript
交互式可视化js库gojs使用介绍及技巧
Feb 18 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
php获取汉字首字母的函数
2013/11/07 PHP
PHP查看当前变量类型的方法
2015/07/31 PHP
PHP之多条件混合筛选功能的实现方法
2019/10/09 PHP
JavaScript 直接操作本地文件的实现代码
2009/12/01 Javascript
MooBox 基于Mootools的对话框插件
2012/01/20 Javascript
深入理解Javascript动态方法调用与参数修改的问题
2013/12/10 Javascript
JavaScript判断文件上传类型的方法
2014/09/02 Javascript
jquery取子节点及当前节点属性值的方法
2014/09/09 Javascript
JavaScript中window.showModalDialog()用法详解
2014/12/18 Javascript
使用jQuery在移动页面上添加按钮和给按钮添加图标
2015/12/04 Javascript
jQuery获取访问者IP地址的方法(基于新浪API与QQ查询接口)
2016/05/25 Javascript
VueJs使用Amaze ui调整列表和内容页面
2017/11/30 Javascript
Angular5中调用第三方js插件的方法
2018/02/26 Javascript
vue2.0的虚拟DOM渲染思路分析
2018/08/09 Javascript
让webpack+vue-cil项目不再自动打开浏览器的方法
2018/09/27 Javascript
vue 配置多页面应用的示例代码
2018/10/22 Javascript
JavaScript 实现HTML DOM增删改查操作的常见方法详解
2020/01/04 Javascript
element el-tree组件的动态加载、新增、更新节点的实现
2020/02/27 Javascript
webpack 如何同时输出压缩和未压缩的文件的实现步骤
2020/06/05 Javascript
vue中v-model对select的绑定操作
2020/08/31 Javascript
[00:37]2016完美“圣”典风云人物:AMS宣传片
2016/12/06 DOTA
Python中文件操作简明介绍
2015/04/13 Python
linux安装Python3.4.2的操作方法
2018/09/28 Python
python opencv读mp4视频的实例
2018/12/07 Python
对python:print打印时加u的含义详解
2018/12/15 Python
numpy中的ndarray方法和属性详解
2019/05/27 Python
python3+opencv 使用灰度直方图来判断图片的亮暗操作
2020/06/02 Python
python新手学习使用库
2020/06/11 Python
Python绘图之柱形图绘制详解
2020/07/28 Python
德国网上花店:Valentins
2018/08/15 全球购物
判断单链表中是否存在环
2012/07/16 面试题
元旦文艺汇演主持词
2014/03/26 职场文书
《富饶的西沙群岛》教学反思
2014/04/09 职场文书
《傅雷家书》教学反思
2014/04/20 职场文书
村党组织公开承诺书
2015/04/30 职场文书
Sentry的安装、配置、使用教程(Sentry日志手机系统)
2022/07/23 Python