javascript实现淘宝幻灯片广告展示效果


Posted in Javascript onApril 27, 2015

本文实例讲述了javascript实现淘宝幻灯片广告展示效果的方法。分享给大家供大家参考。具体如下:

一、效果图如下:

javascript实现淘宝幻灯片广告展示效果

二、代码部分:

JS代码部分:

function getClass(oParent,name){ 
  var arr=[]; 
  var oBj=oParent.getElementsByTagName("*"); 
  for(var i=0;i<oBj.length;i++){ 
    if(oBj[i].className==name){ 
      arr.push(oBj[i]); 
    } 
  } 
  return arr; 
} 
function startmove(obj,json,fnEnd){ 
  var cur=0; 
  clearInterval(obj.timer); 
  obj.timer=setInterval(function(){ 
    var oStop=true; 
    for(var attr in json){ 
      if(attr=='opacity'){ 
        cur=Math.round(parseFloat(getStyle(obj,attr)*100)); 
      }else{ 
        cur=parseInt(getStyle(obj,attr)); 
      } 
      var speed=(json[attr]-cur)/10; 
      speed=speed>0?Math.ceil(speed):Math.floor(speed); 
      if(cur!=json[attr]){ 
        oStop=false; 
      } 
      if(attr=='opacity'){ 
        obj.style[attr]=(cur+speed)/100; 
        obj.style.filter="alpha(opacity:"+cur+speed+")"; 
      }else{ 
        obj.style[attr]=cur+speed+"px"; 
      } 
    } 
    if(oStop){ 
      clearInterval(obj.timer); 
      if(fnEnd)fnEnd(); 
    } 
  },30); 
 
}; 
function getStyle(obj,name){ 
  if(obj.currentStyle){ 
    return obj.currentStyle[name]; 
  }else{
    return getComputedStyle(obj,false)[name]; 
  }
};

CSS部分:

*{ margin: 0px; padding: 0px; } 
img{ 
border: none; width: 470px; height: 150px;
float: left;
} 
.pic_body li{
width: 470px; height: 150px;
float: left; z-index: 3001; } 
ul{
 list-style: none; position: absolute; top: 0px; left: 0px;
 width: 470px; height: 150px; background: yellow; z-index: 3000;
} 
#div1{ border: 1px solid black; width: 470px; height: 150px;
 position: relative; margin: 100px auto; padding: 0px;
 overflow: hidden;
} 
#div1 ol{ bottom: 10px; right: 10px; 
position: absolute; z-index: 9999; 
} 
ol li{ background: yellow; float: left; 
display: inline; margin-right: 3px; padding: 3px 4px;
position: relative; top: 0px; left: 0px;
font-family: arial; font-size: 12px;
cursor: pointer; filter: alpha(opacity:60); opacity: 0.6;
border: 1px solid black;
} 
.active{ background: yellow; font-weight: bolder;
padding: 4px 6px; filter: alpha(opacity:100); opacity: 1;
}

HTML部分:

<!DOCTYPE html> 
<html> 
<head lang="en"> 
  <meta charset="UTF-8"> 
  <title></title> 
  <link href="css.css" rel="stylesheet" type="text/css"> 
  <script src="myscript.js"></script> 
  <script> 
    window.onload=function() { 
      var now = 0; 
      var oDiv = document.getElementById('div1'); 
      var oOl = oDiv.getElementsByTagName('ol')[0]; 
      var oLi = oOl.getElementsByTagName('li'); 
      var oUl = getClass(oDiv, 'pic_body')[0]; 
      for(var i=0;i<oLi.length;i++){ 
        oLi[i].index=i; 
        oLi[i].onclick=function(){ 
          now=this.index; 
          tab(); 
        }; 
      } 
      function tab(){ 
        for(var i=0;i<oLi.length;i++){ 
          oLi[i].className=''; 
        } 
        oLi[now].className='active'; 
        startmove(oUl,{top:-150*now}); 
      }; 
      function next(){ 
        now++; 
        if(now==oLi.length){ 
          now=0; 
        } 
        tab(); 
      }; 
      var timer=setInterval(next,3000); 
      oUl.onmouseover=function(){ 
        clearInterval(timer); 
      }; 
      oUl.onmouseout=function(){ 
        timer=setInterval(next,3000); 
      }; 
    } 
  </script> 
</head> 
<body> 
<div id="div1"> 
  <ol> 
    <li class="active">1</li> 
    <li>2</li> 
    <li>3</li> 
    <li>4</li> 
    <li>5</li> 
  </ol> 
  <ul class="pic_body"> 
    <li><img src="image/1.jpg"></li> 
    <li><img src="image/2.jpg"></li> 
    <li><img src="image/3.jpg"></li> 
    <li><img src="image/4.jpg"></li> 
    <li><img src="image/5.jpg"></li> 
  </ul> 
</div> 
</body> 
</html>

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

Javascript 相关文章推荐
js 替换
Feb 19 Javascript
js的匿名函数使用介绍
Dec 11 Javascript
JavaScript数据类型之基本类型和引用类型的值
Apr 01 Javascript
基于jQuery实现网页打印功能
Dec 01 Javascript
js 获取站点应用名的简单实例
Aug 18 Javascript
AngularJS入门教程之REST和定制服务详解
Aug 19 Javascript
JavaWeb表单及时验证功能在输入后立即验证(含用户类型,性别,爱好...的验证)
Jun 09 Javascript
jQuery EasyUI 选项卡面板tabs的使用实例讲解
Dec 25 jQuery
Angular学习笔记之集成三方UI框架、控件的示例
Mar 23 Javascript
layerUI下的绑定事件实例代码
Aug 17 Javascript
详解如何用typescript开发koa2的二三事
Nov 13 Javascript
JavaScript设计模式之代理模式实例分析
Jan 16 Javascript
jquery实现标签上移、下移、置顶
Apr 26 #Javascript
jquery ui resize 中border-box的bug修正
Apr 26 #Javascript
HTML+CSS+JS实现完美兼容各大浏览器的TABLE固定列
Apr 26 #Javascript
jquery获取节点名称
Apr 26 #Javascript
jQuery实现鼠标经过提示信息的地图热点效果
Apr 26 #Javascript
jquery插件qrcode在线生成二维码
Apr 26 #Javascript
javascript函数式编程实例分析
Apr 25 #Javascript
You might like
用PHP实现文件上传二法
2006/10/09 PHP
PHP实现懒加载的方法
2015/03/07 PHP
php session的锁和并发
2016/01/22 PHP
Avengerls vs Newbee BO3 第二场2.18
2021/03/10 DOTA
Dojo之路:如何利用Dojo实现Drag and Drop效果
2007/04/10 Javascript
IE与firefox之jquery用法区别
2008/10/03 Javascript
IE8 中使用加速器(Activities)
2010/05/14 Javascript
jQuery 滑动方法slideDown向下滑动元素
2014/01/16 Javascript
JavaScript参数个数可变的函数举例说明
2014/10/10 Javascript
Jquery实现仿腾讯微博发表广播
2014/11/17 Javascript
JavaScript获取文本框内选中文本的方法
2015/02/20 Javascript
JS获取月份最后天数、最大天数与某日周数的方法
2015/12/08 Javascript
详谈JS中实现种子随机数及作用
2016/07/19 Javascript
微信小程序 location API实例详解
2016/10/02 Javascript
JS控件bootstrap datepicker使用方法详解
2017/03/25 Javascript
Redux 和 Mobx的选择问题:让你不再困惑!
2017/09/18 Javascript
vue中使用echarts制作圆环图的实例代码
2018/07/27 Javascript
Vue $emit $refs子父组件间方法的调用实例
2018/09/12 Javascript
详解JavaScript的数据类型以及数据类型的转换
2019/04/20 Javascript
vue-cli配置flexible过程详解
2019/07/04 Javascript
使用 Angular RouteReuseStrategy 缓存(路由)组件的实例代码
2019/11/01 Javascript
python迭代器的使用方法实例
2013/11/21 Python
Python实现利用最大公约数求三个正整数的最小公倍数示例
2017/09/30 Python
Python的地形三维可视化Matplotlib和gdal使用实例
2017/12/09 Python
如何基于python实现脚本加密
2019/12/28 Python
django的403/404/500错误自定义页面的配置方式
2020/05/21 Python
html5理解head_动力节点Java学院整理
2017/07/13 HTML / CSS
Mamaearth官方网站:印度母婴护理产品公司
2019/10/06 全球购物
Oasis服装官网:时尚女装在线
2020/07/09 全球购物
优秀企业获奖感言
2014/02/01 职场文书
幼儿园小班家长寄语
2014/04/02 职场文书
歌颂祖国演讲稿
2014/05/04 职场文书
提拔干部考察材料
2014/05/26 职场文书
中学生2014国庆节演讲稿:不屈的民族
2014/09/21 职场文书
党员思想汇报材料
2014/12/19 职场文书
离婚被告代理词
2015/05/23 职场文书