基于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 相关文章推荐
一个无限级XML绑定跨框架菜单(For IE)
Jan 27 Javascript
ExtJS中文乱码之GBK格式编码解决方案及代码
Jan 20 Javascript
Js获取下拉框选定项的值和文本的实现代码
Feb 26 Javascript
用JS在浏览器中创建下载文件
Mar 05 Javascript
一个css与js结合的下拉菜单支持主流浏览器
Oct 08 Javascript
用vue的双向绑定简单实现一个todo-list的示例代码
Aug 03 Javascript
jquery实现左右轮播图效果
Sep 28 jQuery
解决npm管理员身份install时出现权限的问题
Mar 16 Javascript
Vue Element 分组+多选+可搜索Select选择器实现示例
Jul 23 Javascript
了解javascript中的Dom操作
May 27 Javascript
文章或博客自动生成章节目录索引(支持三级)的实现代码
May 10 Javascript
ES6使用新特性Proxy实现的数据绑定功能实例
May 11 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
PHP6 mysql连接方式说明
2009/02/09 PHP
php数组的一些常见操作汇总
2011/07/17 PHP
PHP封装的验证码工具类定义与用法示例
2018/08/22 PHP
php数组遍历类与用法示例
2019/05/24 PHP
php上传后台无法收到数据解决方法
2019/10/28 PHP
基于JQuery实现CheckBox全选全不选
2011/06/27 Javascript
jQuery中获取Radio元素值的方法
2013/07/02 Javascript
jquery如何实现在加载完iframe的内容后再进行操作
2013/09/10 Javascript
jquery 循环显示div的示例代码
2013/10/18 Javascript
Bootstrap实现默认导航栏效果
2020/09/21 Javascript
jQuery获取父元素节点、子元素节点及兄弟元素节点的方法
2016/04/14 Javascript
老生常谈 关于JavaScript的类的继承
2016/06/24 Javascript
jquery实用技巧之输入框提示语句
2016/07/28 Javascript
Vue响应式添加、修改数组和对象的值
2017/03/20 Javascript
深入理解 webpack 文件打包机制(小结)
2018/01/08 Javascript
JavaScript设计模式之调停者模式实例详解
2018/02/03 Javascript
vue 之 .sync 修饰符示例详解
2018/04/21 Javascript
纯JS实现的读取excel文件内容功能示例【支持所有浏览器】
2018/06/23 Javascript
JS 数组随机洗牌的实例代码
2018/09/12 Javascript
JS正则表达式封装与使用操作示例
2019/05/15 Javascript
Vue中消息横向滚动时setInterval清不掉的问题及解决方法
2019/08/23 Javascript
在layui.use 中自定义 function 的正确方法
2019/09/16 Javascript
vue移动端弹起蒙层滑动禁止底部滑动操作
2020/07/22 Javascript
Python自然语言处理之词干,词形与最大匹配算法代码详解
2017/11/16 Python
详解Python下载图片并保存本地的两种方式
2019/05/15 Python
Python使用sklearn库实现的各种分类算法简单应用小结
2019/07/04 Python
pytorch SENet实现案例
2020/06/24 Python
HTML5+CSS3 实现灵动的动画 TAB 切换效果(DEMO)
2017/09/15 HTML / CSS
在HTML5 Canvas中放入图片和保存为图片的方法
2014/05/03 HTML / CSS
管理信息系学生的自我评价
2014/01/11 职场文书
路政管理毕业自荐书范文
2014/02/10 职场文书
项目合作协议书范本
2014/04/16 职场文书
授权委托书协议书
2014/10/16 职场文书
入党积极分子半年考察意见
2015/06/02 职场文书
uniapp开发小程序的经验总结
2021/04/08 Javascript