js实现的图片滚动兼展示效果的特效
2012-08-08 16:53
966 查看
截一个效果图:
View Code
因为是做项目中的效果,所以js采用的闭包的方式~
View Code
(function (){ /* *2行tr滚动 */ var x=document.getElementById("m_newclass_tab1");//获取table对象 var y=x.getElementsByTagName("tr");//获取一行tr对象 var z=x.getElementsByTagName("img");//获取每张图片 var hei=y[0].offsetHeight;//获取一行tr的高度 var t1=null; function scrollTo(ind){ var n=1; var b=x.scrollTop; var c=ind*(2*hei)-b;//变化量为2行tr的高度 var d=20; function moving(){ clearTimeout(t1); n++; x.scrollTop=Tween.Quad.easeOut(n,b,c,d); if(n>d){ clearTimeout(t1); return; } t1=setTimeout(moving,17); } moving(); } //点击上按钮向上滚动 var shu=document.getElementById("m_newclass_shu");//获取变化的数值对象 var zs=document.getElementById("m_newclass_zs");//获取总数值对象 var up=document.getElementById("m_newclass_up");//获取向上点击的按钮 zs.innerHTML=y.length/2;//得到总tr行数并让页面显示该数值 up.onclick=function(){ var now=Math.round(x.scrollTop/(2*y[0].offsetHeight));//实时获取数值的变化 now--; if(now<0){ now=y.length/2-1; } scrollTo(now); now++;//使变化的值从1开始 shu.innerHTML="<em>"+now+"</em>";//将变化的值赋给em } //点击下按钮向下滚动 var down=document.getElementById("m_newclass_down");//获取向下点击的按钮 down.onclick=function(){ var now=Math.round(x.scrollTop/(2*y[0].offsetHeight)); now++; if(now>y.length/2-1){ now=0; } scrollTo(now); now++; shu.innerHTML=now; } //鼠标移到小图上大图区域更换 var biger=document.getElementById("m_newclass_big"); var big=biger.getElementsByTagName("img")[0];//获取大图片显示区域 var touming=biger.getElementsByTagName("var")[0];//获取大图显示区域的透明层 for(var i=0;i<z.length;i++){ z[i].onmouseover=function(){ for(var i=0;i<z.length;i++){ if(this==z[i]){ big.src=z[i].getAttribute('data-src');//js文件和HTML是一个等级的,注意路径! big.alt=z[i].alt;//将图片的alt属性传递给大图 big.title=z[i].title;//将图片的title属性传递给大图 } } } } /*控制展示区的透明层*/ var shuju1=document.getElementById("m_newclass_sj1"); var shuju2=document.getElementById("m_newclass_sj2"); //显示透明层 biger.onmouseover=function setOpacity() { //透明度兼容 if (touming.filters) { touming.style.filter = 'alpha(opacity=' + 20 + ')'; } else{ touming.style.opacity = 0.2; } /*大图展示区域的文字显示信息*/ shuju1.innerHTML=big.title;//输出大图的title shuju2.innerHTML="就业于"+big.alt;//输出大图的alt } //隐藏透明层 biger.onmouseout=function setOpacity() { //透明度兼容 if (touming.filters) { touming.style.filter = 'alpha(opacity=' +0 + ')'; } else{ touming.style.opacity = 0; } shuju1.innerHTML=""; shuju2.innerHTML=""; } })();
因为是做项目中的效果,所以js采用的闭包的方式~
相关文章推荐
- js+div实现文字滚动和图片切换效果代码
- jb51站长推荐的用js实现的多浏览器支持的图片轮换展示效果ie,firefox
- js+div实现图片滚动效果代码
- js实现文字定时向上滚动效果_文字特效_js网页特效代码
- js实现图片滑动及放大镜效果(仿淘宝京东图片展示)
- 使用js实现带有停顿效果的图片滚动(按钮控制)
- js实现图片滚动效果
- 原生js实现tab选项卡里内嵌图片滚动特效代码
- swiper.js插件实现图片滚动效果
- 【转】js实现图片滚动效果
- js实现图片的点击滚动效果
- JS实现可左右滚动产品图片展示
- 手把手教小白如何用css+js实现页面中图片放大展示效果
- 完美实现js焦点轮播效果(二)(图片可滚动)
- JS特效代码大全(十)超炫的js图片展示效果(二)
- 用roll.js实现的图片自动滚动+鼠标触动的特效
- JS实现图片高亮展示效果实例
- 常见JS效果实现实现之图片减速度滚动
- js实现图片无缝滚动特效
- JS实现图片滚动效果