基于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 限制输入和粘贴(IE,firefox测试通过)
Nov 14 Javascript
有趣的JavaScript数组长度问题代码说明
Jan 20 Javascript
js创建元素(节点)示例
Jan 02 Javascript
js的hasownproperty使用示例
Mar 02 Javascript
谷歌浏览器不支持showModalDialog模态对话框的解决方法
Sep 22 Javascript
基于jquery实现简单的手风琴特效
Nov 24 Javascript
jQuery.Uploadify插件实现带进度条的批量上传功能
Jun 08 Javascript
easyui form validate总是返回false的原因及解决方法
Nov 07 Javascript
微信小程序 确认框的实现(附代码)
Jul 23 Javascript
微信小程序实现收货地址左滑删除
Nov 18 Javascript
Js数组扁平化实现方法代码总汇
Nov 11 Javascript
Vue3 实现双盒子定位Overlay的示例
Dec 22 Vue.js
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上传文件,创建递归目录的实例代码
2013/10/18 PHP
php数组去重复数据示例
2014/02/25 PHP
PHP循环输出指定目录下的所有文件和文件夹路径例子(简单实用)
2014/05/10 PHP
destoon二次开发模板及调用语法汇总
2014/06/21 PHP
PHP设计模式之工厂方法设计模式实例分析
2018/04/25 PHP
PDO::getAvailableDrivers讲解
2019/01/28 PHP
PhpStorm连接服务器并实现自动上传功能
2020/12/09 PHP
用原生JavaScript实现jQuery的$.getJSON的解决方法
2013/05/03 Javascript
JQuery为页面Dom元素绑定事件及解除绑定方法
2014/04/23 Javascript
JavaScript实现自动变换表格边框颜色
2015/05/08 Javascript
基于jquery实现日历签到功能
2020/09/11 Javascript
JavaScript过滤字符串中的中文与空格方法汇总
2016/03/07 Javascript
原生JS封装Ajax插件(同域、jsonp跨域)
2016/05/03 Javascript
javascript宿主对象之window.navigator详解
2016/09/07 Javascript
Js面试算法详解
2018/04/08 Javascript
React native ListView 增加顶部下拉刷新和底下点击刷新示例
2018/04/27 Javascript
浅谈关于iview表单验证的问题
2018/09/29 Javascript
中高级前端必须了解的JS中的内存管理(推荐)
2019/07/04 Javascript
vue-router 中 meta的用法详解
2019/11/01 Javascript
python实现的一只从百度开始不断搜索的小爬虫
2013/08/13 Python
python中sys.argv参数用法实例分析
2015/05/20 Python
python实现监控某个服务 服务崩溃即发送邮件报告
2018/06/21 Python
Python两个字典键同值相加的几种方法
2019/03/05 Python
Python中turtle库的使用实例
2019/09/09 Python
Django模板导入母版继承和自定义返回Html片段过程解析
2019/09/18 Python
Django Admin设置应用程序及模型顺序方法详解
2020/04/01 Python
Anaconda和ipython环境适配的实现
2020/04/22 Python
加拿大领先的牛仔零售商:Bluenotes
2018/01/22 全球购物
客服主管岗位职责
2013/12/13 职场文书
天地会口号
2014/06/17 职场文书
安全生产月标语
2014/10/07 职场文书
廉政文化进校园广播稿
2014/10/20 职场文书
销售内勤岗位职责范本
2015/04/13 职场文书
运输公司工作总结
2015/08/11 职场文书
七夕情人节问候语
2015/11/11 职场文书
分享几种python 变量合并方法
2022/03/20 Python