js鼠标经过,实现图片的渐隐渐现
2016-10-13 18:12
351 查看
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> *{padding: 0;margin: 0;} body{background-color: #d8d8d8;} #box{width:400px;height:320px;opacity: 0;border: 1px solid black;} </style> <script type="text/javascript"> window.onload=function(){ var oBox=document.getElementById('box'); oBox.onmouseover=function(){//鼠标经过调用move函数 move(oBox,100,'opacity'); }; oBox.onmouseout=function(){ move(oBox,0,'opacity'); }; oBox.time=null;//添加一个oBox的专属time。 function move(obj,target,name){//三个参数代表对象,目标值,属性名 clearInterval(obj.time); function dong(){ var cur=0; if(name=='opacity'){//如果获取的是对象的透明度,进行特别处理 cur=parseFloat(getstyle(obj,name))*100;//获取的透明度是一个小数,在电脑上会做四舍五入,所以要完全获得透明度,用parseFloat保留小数,乘以100意思是,在IE下,透明度是一个几十的数(如50) } else{ cur=getstyle(obj,name);//如果不是透明度,做其他处理。 } var speed=(target-cur)/20;//目标值减去获取的属性名对应的值,除以运动系数,得到速度(非匀速) speed>0?Math.ceil(speed):Math.floor(speed);//判断速度是否大于0,进行上下取整处理。 if(cur==target){//当获取的属性名对应的属性值等于目标值的时候,停止定时器 clearInterval(obj.time); } else{//否则继续运行定时器 if(name=='opacity'){//如果属性名是透明度,进行以下处理 cur=cur+speed;//定时器每运行一次,cur就等于上一次的cur的值加上速度,知道cur等于目标值。 obj.style.opacity=cur/100;//在非IE下执行这行代码。 obj.style.filter='alpha(opacity:'+cur+')';//在IE下执行这行代码。 } else{//如果不是透明度 cur=cur+speed;<span style="font-family: Arial, Helvetica, sans-serif;">//定时器每运行一次,cur就等于上一次的cur的值加上速度,知道cur等于目标值。</span> obj.style[name]=cur+'px';//能改具有px属性的功能 } } } obj.time=setInterval(dong,30);//对象专属的定时器 } }; function getstyle(obj,name){//获得非行间样式的属性值obj表示对象,name表示对象的属性,举个例子obj.name=oBox.width if(obj.currentStyle){//兼容性处理,在IE浏览器下起作用 return obj.currentStyle[name];//这里不能写成obj.currentStyle.name,引文name不是一个属性,是一个参数,所以要用[name] } else{ return getComputedStyle(obj,false)[name];//在非IE下起作用 } } </script> </head> <body> <div id='box'> <img src="../img/3.jpg" /> </div> </body> </html>
相关文章推荐
- js实现图片显示局部,鼠标经过显示全部的效果
- js实现鼠标经过时图片滚动停止的方法
- js实现鼠标经过时图片滚动停止的方法
- js和css两种实现鼠标经过图片时显示透明框的遮罩条文字
- js实现图片显示局部,鼠标经过显示全部的效果
- js实现图片显示局部,鼠标经过显示全部的效果
- 利用JS实现基本的图片轮播功能,包括鼠标的经过事件
- js实现图片渐隐渐显的切换效果
- JS实现鼠标滑过图片的抖动效果
- CSS实现鼠标经过图片由黑白变彩色
- JS实现鼠标移动到缩略图显示大图的图片放大效果
- Js中实现图片随鼠标移动——ClientX,ClientY,Position
- 淘宝商城首页鼠标经过整个区域图片变暗变亮的JS特效代码
- js设置图片或文字自动左右滚动控制,鼠标经过停留
- JS实现图片跟随鼠标移动
- 分享一个jquery插件:实现类似淘宝上鼠标经过图片右侧显示大图的效果
- 鼠标经过图片,图片变亮,离开图片,图片变暗,代码实现
- Dreamweaver 简单实现鼠标经过图片变换的方法
- 鼠标移到图片上有图片说明的实现办法(js)
- js实现:会骂人的图片,不信鼠标移上来试试!