ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript による淘宝商品の広告効果の実装方法の詳細な説明

JavaScript による淘宝商品の広告効果の実装方法の詳細な説明

黄舟
黄舟オリジナル
2017-08-11 10:48:201780ブラウズ

この記事では、JavaScript に基づいた淘宝商品の広告効果の実装について詳しく紹介します。興味のある方は参考にしてください。

この記事の例では、淘宝商品の広告効果を実現するための具体的なコードを共有します。 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 部分:


<p 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> 
 </p>

JS 部分:


window.onload = function(){ 
  var op = document.getElementById(&#39;ad&#39;); 
  var aUl = op.getElementsByTagName(&#39;ul&#39;); 
  var oImg = op.getElementsByTagName(&#39;img&#39;)[0]; 
  var aImg = [&#39;images/pic1.jpg&#39;,&#39;images/pic2.jpg&#39;,&#39;images/pic3.jpg&#39;,&#39;images/pic4.jpg&#39;,&#39;images/pic5.png&#39;,&#39;images/pic6.png&#39;,&#39;images/pic7.png&#39;,&#39;images/pic8.png&#39;,&#39;images/pic1.jpg&#39;,&#39;images/pic2.jpg&#39;,&#39;images/pic3.jpg&#39;,&#39;images/pic4.jpg&#39;,&#39;images/pic5.png&#39;,&#39;images/pic6.png&#39;]; 
  var aTxt = [&#39;连衣裙&#39;,&#39;T恤&#39;,&#39;雪纺&#39;,&#39;铅笔裤&#39;,&#39;婚纱&#39;,&#39;外套&#39;,&#39;连体裤&#39;,&#39;包包&#39;,&#39;凉鞋&#39;,&#39;单鞋&#39;,&#39;太阳镜&#39;,&#39;丝袜&#39;,&#39;帆布鞋&#39;,&#39;情侣鞋&#39;]; 
  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 += &#39;<li>&#39;+ aTxt[i] +&#39;</li>&#39; 
   aUl[1].innerHTML += &#39;<li>&#39;+ aTxt[i + len/2] +&#39;</li>&#39; 
  } 
 
  var aLiL = aUl[0].getElementsByTagName(&#39;li&#39;); 
  var aLiR = aUl[1].getElementsByTagName(&#39;li&#39;); 
  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 = &#39;&#39;; 
   arrLi[n].className = &#39;cur&#39;; 
   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); 
 
  // 鼠标移入,清除定时器 
  op.onmouseover = function(){ 
   clearInterval(timer); 
  }; 
 
  // 鼠标移出,开启定时器 
  op.onmouseout = function(){ 
   fnTimer(oldNum); 
  }; 
  };

:

以上がJavaScript による淘宝商品の広告効果の実装方法の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。