基于JavaScript实现淘宝商品广告效果


Posted in Javascript onAugust 10, 2017

本文实例为大家分享了JavaScript实现淘宝商品广告效果的具体代码,供大家参考,具体内容如下

CSS部分:

ul{ margin: 0; padding: 0; } 
  li{ list-style: none; } 
 
  #ad{ width: 298px; height: 208px; border: 1px #ff6300 solid; padding: 4px 1px; text-align: center; } 
  #ad .listL{ float: left; } 
  #ad .listR{ float: right; } 
  #ad li{ width: 48px; height: 26px; border: 1px #ffadad solid; background: #fff7f7; color: #333; line-height: 26px; margin-bottom: 2px; cursor: pointer; } 
  #ad img{ height: 206px; width: 188px; background: url(images/loader_ico.gif) no-repeat center center; } 
  #ad .cur{ background: #ff8494; color: #fff }

HTML部分:

<div id="ad"> 
  <ul class="listL"> 
   <!-- <li class="cur"></li> 
   <li></li> 
   <li></li> 
   <li></li> 
   <li></li> 
   <li></li> 
   <li></li> --> 
  </ul> 
  <a href="#"><img src="" alt=""></a> 
  <ul class="listR"> 
   <!-- <li></li> 
   <li></li> 
   <li></li> 
   <li></li> 
   <li></li> 
   <li></li> 
   <li></li> --> 
  </ul> 
 </div>

JS部分:

window.onload = function(){ 
  var oDiv = document.getElementById('ad'); 
  var aUl = oDiv.getElementsByTagName('ul'); 
  var oImg = oDiv.getElementsByTagName('img')[0]; 
  var aImg = ['images/pic1.jpg','images/pic2.jpg','images/pic3.jpg','images/pic4.jpg','images/pic5.png','images/pic6.png','images/pic7.png','images/pic8.png','images/pic1.jpg','images/pic2.jpg','images/pic3.jpg','images/pic4.jpg','images/pic5.png','images/pic6.png']; 
  var aTxt = ['连衣裙','T恤','雪纺','铅笔裤','婚纱','外套','连体裤','包包','凉鞋','单鞋','太阳镜','丝袜','帆布鞋','情侣鞋']; 
  var len = aImg.length; 
  var oldNum = 0; 
  var num = 0; 
  var timer = null; 
  var speed = 1; 
 
  // 创建添加左右两侧li 
  for( var i = 0; i < len/2; i++){ 
   aUl[0].innerHTML += '<li>'+ aTxt[i] +'</li>' 
   aUl[1].innerHTML += '<li>'+ aTxt[i + len/2] +'</li>' 
  } 
 
  var aLiL = aUl[0].getElementsByTagName('li'); 
  var aLiR = aUl[1].getElementsByTagName('li'); 
  var arrLi = []; 
  // 将遍历的所有li添加到数组arrLi中 
  for( var i = 0; i < aLiL.length; i++){ 
   arrLi.push(aLiL[i]); 
  } 
  for( var i = 0; i < aLiR.length; i++){ 
   arrLi.push(aLiR[i]); 
  } 
  // console.log(arrLi.length); 
 
  // 函数初始化 
  function init(n){ 
   oImg.src = aImg[n]; 
   arrLi[oldNum].className = ''; 
   arrLi[n].className = 'cur'; 
   oldNum = n; 
  } 
  init(0); 
 
  // 鼠标经过li,图片切换 
  for(var i = 0; i < len; i++){ 
   arrLi[i].index = i; 
   arrLi[i].onmouseover = function(){ 
    init(this.index); 
   } 
  }; 
 
  // 定时切换 
  function fnTimer(n){ 
   timer = setInterval(function(){ 
     
    // type1:顺序切换 
    /* n ++; 
    if(n == len){ 
     n = 0; 
    }*/ 
 
    // type2:倒序切换 
    if(n == len-1){ 
     speed = -1; 
    }else if(n== 0){ 
     speed = 1; 
    } 
    n += speed; 
    init(n); 
   },1000); 
  }; 
  fnTimer(0); 
 
  // 鼠标移入,清除定时器 
  oDiv.onmouseover = function(){ 
   clearInterval(timer); 
  }; 
 
  // 鼠标移出,开启定时器 
  oDiv.onmouseout = function(){ 
   fnTimer(oldNum); 
  }; 
  };

预览效果:

基于JavaScript实现淘宝商品广告效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript静态的动态
Sep 18 Javascript
myEvent.js javascript跨浏览器事件框架
Oct 24 Javascript
jQuery 阴影插件代码分享
Jan 09 Javascript
jquery通过load获取文件的内容并跳到锚点的方法
Jan 29 Javascript
JavaScript数组去重的两种方法推荐
Apr 05 Javascript
微信小程序 canvas API详解及实例代码
Oct 08 Javascript
Vue 框架之键盘事件、健值修饰符、双向数据绑定
Nov 14 Javascript
加快Vue项目的开发速度的方法
Dec 12 Javascript
js中的reduce()函数讲解
Jan 18 Javascript
小程序实现分类页
Jul 12 Javascript
Vue通过WebSocket建立长连接的实现代码
Nov 05 Javascript
JS实现简单日历特效
Jan 03 Javascript
Vue数组更新及过滤排序功能
Aug 10 #Javascript
Webpack性能优化 DLL 用法详解
Aug 10 #Javascript
详解React Native网络请求fetch简单封装
Aug 10 #Javascript
jQuery Ajax 实现分页 kkpager插件实例代码
Aug 10 #jQuery
JS对象与JSON互转换、New Function()、 forEach()、DOM事件流等js开发基础小结
Aug 10 #Javascript
jquery.uploadView 实现图片预览上传功能
Aug 10 #jQuery
express框架实现基于Websocket建立的简易聊天室
Aug 10 #Javascript
You might like
解析php中memcache的应用
2013/06/18 PHP
php获取当月最后一天函数分享
2015/02/02 PHP
php获得文件夹下所有文件的递归算法的简单实例
2016/11/01 PHP
javascript xml为数据源的下拉框控件
2009/07/07 Javascript
jQuery EasyUI API 中文文档 - NumberSpinner数值微调器使用介绍
2011/10/21 Javascript
nodejs win7下安装方法
2012/05/24 NodeJs
Js制作简单弹出层DIV在页面居中 中间显示遮罩的具体方法
2013/08/08 Javascript
js中的onchange和onpropertychange (onchange无效的解决方法)
2014/03/08 Javascript
上传图片js判断图片尺寸和格式兼容IE
2014/09/01 Javascript
jquery实现一个简单的表单验证实例
2016/03/30 Javascript
jQuery中使用animate自定义动画的方法
2016/05/29 Javascript
浅谈javascript:两种注释,声明变量,定义函数
2016/09/29 Javascript
用jmSlip编写移动端顶部日历选择控件
2016/10/24 Javascript
easyUI实现(alert)提示框自动关闭的实例代码
2016/11/07 Javascript
node.js平台下利用cookie实现记住密码登陆(Express+Ejs+Mysql)
2017/04/26 Javascript
JavaScript之iterable_动力节点Java学院整理
2017/06/29 Javascript
javascript性能优化之分时函数的介绍
2018/03/28 Javascript
Vue模拟数据,实现路由进入商品详情页面的示例
2018/08/31 Javascript
python list使用示例 list中找连续的数字
2014/01/27 Python
Python探索之创建二叉树
2017/10/25 Python
Python+pandas计算数据相关系数的实例
2018/07/03 Python
Python 面试中 8 个必考问题
2018/11/16 Python
Python直接赋值、浅拷贝与深度拷贝实例分析
2019/06/18 Python
pandas取出重复数据的方法
2019/07/04 Python
python并发编程多进程之守护进程原理解析
2019/08/20 Python
Python中的__init__作用是什么
2020/06/09 Python
德国健康生活方式网上商店:Landkaufhaus Mayer
2019/03/12 全球购物
iHerb俄罗斯:维生素、补品和天然产品
2020/07/09 全球购物
C#里面可以避免一个类被其他类继承么?如何?
2013/09/26 面试题
你们项目是如何进行变更控制的
2015/08/26 面试题
制作部班长职位说明书
2014/02/26 职场文书
警察正风肃纪剖析材料
2014/10/16 职场文书
讲文明倡议书
2015/04/29 职场文书
春节随笔
2015/08/15 职场文书
导游词之南京中山陵
2019/11/27 职场文书
java项目构建Gradle的使用教程
2022/03/24 Java/Android