基于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 - HTML的request类
Jan 09 Javascript
javascript模拟实现C# String.format函数功能代码
Nov 25 Javascript
js的隐含参数(arguments,callee,caller)使用方法
Jan 28 Javascript
jquery实现的一个简单进度条效果实例
May 12 Javascript
项目中常用的JS方法整理
Jan 30 Javascript
js提示框替代系统alert,自动关闭alert对话框的实现方法
Nov 07 Javascript
ES5 ES6中Array对象去除重复项的方法总结
Apr 27 Javascript
使用prop解决一个checkbox选中后再次选中失效的问题
Jul 05 Javascript
vue-router 组件复用问题详解
Jan 22 Javascript
JavaScript读写二进制数据的方法详解
Sep 09 Javascript
vue组件之间数据传递的方法实例分析
Feb 12 Javascript
从原生JavaScript到React深入理解
Jul 23 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设置session值和cookies的学习示例
2014/03/21 PHP
CI框架Session.php源码分析
2014/11/03 PHP
解决FLASH需要点击激活的代码
2006/12/20 Javascript
javascript Array数组对象的扩展函数代码
2010/05/22 Javascript
js获取input标签的输入值实现代码
2013/08/05 Javascript
MyEclipse取消验证Js的两种方法
2013/11/14 Javascript
javascript跨浏览器的属性判断方法
2014/03/16 Javascript
基于jquery固定于顶部的导航响应浏览器滚动条事件
2014/11/02 Javascript
jQuery实现可关闭固定于底(顶)部的工具条菜单效果
2015/11/06 Javascript
安装使用Mongoose配合Node.js操作MongoDB的基础教程
2016/03/01 Javascript
深入理解ECMAScript的几个关键语句
2016/06/01 Javascript
JS实现鼠标滑过显示边框的菜单效果
2016/09/21 Javascript
Three.js开发实现3D地图的实践过程总结
2017/11/20 Javascript
node+koa2+mysql+bootstrap搭建一个前端论坛
2018/05/06 Javascript
echarts整合多个类似option的方法实例
2018/07/10 Javascript
js事件触发操作实例分析
2019/06/21 Javascript
python不带重复的全排列代码
2013/08/13 Python
python3.3实现乘法表示例
2014/02/07 Python
python实现通过pil模块对图片格式进行转换的方法
2015/03/24 Python
构建Python包的五个简单准则简介
2015/06/15 Python
Python深入06——python的内存管理详解
2016/12/07 Python
PyQt5每天必学之QSplitter实现窗口分隔
2018/04/19 Python
Python 保持登录状态进行接口测试的方法示例
2019/08/06 Python
python 穷举指定长度的密码例子
2020/04/02 Python
Python装饰器如何实现修复过程解析
2020/09/05 Python
Microsoft Advertising美国:微软搜索广告
2019/05/01 全球购物
哥德堡通行证:Gothenburg Pass
2019/12/09 全球购物
澳洲最大的时尚奢侈品电商平台:Cettire
2020/06/15 全球购物
茶叶店创业计划书范文
2014/01/19 职场文书
个人委托书范本
2014/04/02 职场文书
干部竞争上岗演讲稿
2014/09/11 职场文书
学生检讨书怎么写
2015/05/07 职场文书
nginx location优先级的深入讲解
2021/03/31 Servers
php TP5框架生成二维码链接
2021/04/01 PHP
“鬼灭之刃”热度不减,其成功背后的原因是什么?
2022/03/22 日漫
java中如何截取字符串最后一位
2022/07/07 Java/Android