最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

原生js實現(xiàn)旋轉(zhuǎn)木馬輪播圖效果

 更新時間:2017年02月27日 16:24:12   作者:chang紅達  
本文主要介紹了原生js實現(xiàn)旋轉(zhuǎn)木馬輪播圖效果的實例,具有很好的參考價值,下面跟著小編一起來看下吧

話不多說,請看代碼:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>旋轉(zhuǎn)木馬特效</title>
 <style type="text/css">
 *{margin: 0;padding: 0;list-style:none;}
 #demo{width:1200px;margin:100px auto 0;}
 #innerht{width:1200px;height:500px;position:relative;}
 ul li{position:absolute;top:0;left:0;z-index:1;}
 ul li img{width:100%;}
 #corrow{position:absolute;width:100%;top:50%;opacity:0;z-index:99;}
 #btn_lef,#btn_rig{position:absolute;height:112px;width:76px;top:50%;margin-top:-56px;}
 #btn_lef{left:0;}
 #btn_rig{right:0;}
 </style>
</head>
<body>
 <div id="demo">
 <div id="innerht">
  <ul>
  <li><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><img src="http://www.qdfuns.com/misc.php?mod=attach&genre=editor&aid=dac666f84f6ad05ec026ad655ea0f159" alt=""></a></li>
  <li><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><img src="http://www.qdfuns.com/misc.php?mod=attach&genre=editor&aid=89c2213f2b614db88b5724b82dafc02a" alt=""></a></li>
  <li><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><img src="http://www.qdfuns.com/misc.php?mod=attach&genre=editor&aid=e7969486909c076abf795995bdc3da54" alt=""></a></li>
  <li><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><img src="http://www.qdfuns.com/misc.php?mod=attach&genre=editor&aid=b404e53a3f4dd7e97438693e8e2d4082" alt=""></a></li>
  <li><a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" ><img src="http://www.qdfuns.com/misc.php?mod=attach&genre=editor&aid=ed309dded163d172b53154b2046eb1a2" alt=""></a></li>
  </ul>
  <div id="corrow">
  <a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" id="btn_lef"><img src="http://www.qdfuns.com/misc.php?mod=attach&genre=editor&aid=206927b03b97b194bc04cdcaf0e10a33" height="112" width="76" alt=""></a>
  <a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" id="btn_rig"><img src="http://www.qdfuns.com/misc.php?mod=attach&genre=editor&aid=0e84253cccdf667e293522a0a107eeec" height="112" width="76" alt=""></a>
  </div>
 </div>
 </div>
</body>
<script type="text/javascript">
 (function(window){
 function $(id){
  return document.getElementById(id);
 };
//每張圖片對應(yīng)的樣式
 var tempArr = [
  {
  "width":400,
  "top":20,
  "left":50,
  "opacity":0.2,
  "zIndex":2
  },
  {
  "width":600,
  "top":70,
  "left":0,
  "opacity":0.8,
  "zIndex":3
  },
  {
  "width":800,
  "top":100,
  "left":200,
  "opacity":1,
  "zIndex":4
  },
  {
  "width":600,
  "top":70,
  "left":600,
  "opacity":0.8,
  "zIndex":3
  },
  {
  "width":400,
  "top":20,
  "left":750,
  "opacity":0.2,
  "zIndex":2
  }
 ];
 // 設(shè)置限流函數(shù)
 var onOff = true ;
 // 獲取對象
 var left = $("btn_lef"),right = $("btn_rig"),innerht = $("innerht"),ul = innerht.children[0],lis = ul.children,arrow = $("corrow");
 // 給每個li添加樣式
 addStyle();
 // 大盒子的hover事件
 innerht.onmouseover = function(){
  animate(arrow,{"opacity":1});
 };
 innerht.onmouseout = function(){
  animate(arrow,{"opacity":0});
 };
 // 右箭頭點擊事件
 right.onclick = function(){
  if( onOff ){
  onOff = false;
  var atop = tempArr.shift();
  tempArr.push( atop );
  addStyle();
  };
 };
 // 左箭頭點擊事件
 left.onclick = function(){
  if( onOff ){
  onOff = false;
  var apop = tempArr.pop();
  tempArr.unshift( apop );
  addStyle();
  };
 };
 function addStyle(){
  for( i = 0 ; i < lis.length ; i++ ){
  animate(lis[i],tempArr[i],function(){
   onOff = true;
   console.log(onOff);
  });
  };
 };
 // 設(shè)置animate函數(shù)
 function animate(obj,json,fn){
  clearInterval(obj.timer);
  obj.timer = setInterval(function(){
  var flog = true ;
  for( k in json ){
   if( k === "zIndex" ){
   obj.style[k] = json[k]; 
   }else if( k === "opacity" ){
   var leader = getStyle(obj,k) * 100 ;
   var target = json[k] * 100 ;
   var step = ( target - leader ) / 10 ;
   step = step > 0 ? Math.ceil( step ) : Math.floor( step ) ;
   // 浮點數(shù)判斷相等時是不準確的
   // 所以不能寫leader = ( leader + step )/100;
   // 保持leader和target都是整數(shù),便于下面判斷相等
   leader = leader + step ;
   obj.style[k] = leader / 100;
   }else{
   var leader = parseInt( getStyle(obj,k) ) || 0 ;
   var target = json[k];
   var step = ( target - leader ) / 10 ;
   step = step > 0 ? Math.ceil( step ) : Math.floor( step ) ;
   leader = leader + step ; 
   obj.style[k] = leader + "px";
   };
   if( leader !== target ){
   flog = false ;
   };
  };
  console.log(flog);
  if( flog ){
   clearInterval( obj.timer );
   if( fn ){
   fn();
   };
  };
  }, 15);
 };
 // 設(shè)置getStyle函數(shù),獲取計算后的樣式
 function getStyle(obj,attr){
  if( window.getComputedStyle ){
  return window.getComputedStyle(obj,null)[attr];
  }else{
  return obj.currentStyle[attr];
  };
 };
 })(window)
</script>
</html>

以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!

相關(guān)文章

  • uniapp 獲取頁面來源及注意事項

    uniapp 獲取頁面來源及注意事項

    這篇文章主要介紹了uniapp 獲取頁面來源及注意事項,獲取當前頁面棧的實例,以數(shù)組形式按棧的順序給出,數(shù)組中的元素為頁面實例,第一個元素為首頁,最后一個元素為當前頁面,感興趣的朋友參考本文實例代碼
    2024-03-03
  • JavaScript實現(xiàn)簡單的隱藏式側(cè)邊欄功能示例

    JavaScript實現(xiàn)簡單的隱藏式側(cè)邊欄功能示例

    這篇文章主要介紹了JavaScript實現(xiàn)簡單的隱藏式側(cè)邊欄功能,涉及javascript結(jié)合定時器針對頁面元素屬性動態(tài)操作相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2018-08-08
  • JavaScript傳參的6種方式總結(jié)

    JavaScript傳參的6種方式總結(jié)

    js中的傳值方式,對于簡單類型(好比字符串和數(shù)值)就是值傳遞和引用傳遞,下面這篇文章主要給大家介紹了關(guān)于JavaScript傳參的6種方式,需要的朋友可以參考下
    2023-03-03
  • js全屏事件fullscreenchange 實現(xiàn)全屏、退出全屏操作

    js全屏事件fullscreenchange 實現(xiàn)全屏、退出全屏操作

    這篇文章主要為大家詳細介紹了js全屏事件fullscreenchange,實現(xiàn)全屏、退出全屏操作,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-09-09
  • JS co 函數(shù)庫的含義和用法實例總結(jié)

    JS co 函數(shù)庫的含義和用法實例總結(jié)

    這篇文章主要介紹了JS co 函數(shù)庫的含義和用法,結(jié)合實例形式總結(jié)分析了JS co 函數(shù)庫的基本含義、功能、用法及操作注意事項,需要的朋友可以參考下
    2020-04-04
  • JS實現(xiàn)深拷貝的4種方式介紹

    JS實現(xiàn)深拷貝的4種方式介紹

    這篇文章主要給大家介紹了關(guān)于JS實現(xiàn)深拷貝的4種方式,深拷貝是指將一個對象完整地拷貝一份,不受原對象影響,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-07-07
  • 使用Javascript接收get傳遞的值的代碼

    使用Javascript接收get傳遞的值的代碼

    用js獲取頁面值得仿佛,需要的朋友可以參考下。
    2011-11-11
  • JS溫故而知新之變量提升和時間死區(qū)

    JS溫故而知新之變量提升和時間死區(qū)

    這篇文章主要給大家介紹了關(guān)于JS溫故而知新之變量提升和時間死區(qū)的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-01-01
  • JavaScript中將字符串轉(zhuǎn)換為浮點數(shù)的技巧

    JavaScript中將字符串轉(zhuǎn)換為浮點數(shù)的技巧

    在JavaScript中,parseFloat是一個內(nèi)置函數(shù),用于將一個字符串解析成浮點數(shù),這個方法對于處理用戶輸入、從文本文件讀取數(shù)據(jù)或者在Web API中獲取數(shù)值尤其重要,本文將詳細介紹parseFloat的工作原理、使用方法以及通過代碼案例展示其在實際開發(fā)中的應(yīng)用
    2025-02-02
  • JS如何在數(shù)組指定位置插入元素

    JS如何在數(shù)組指定位置插入元素

    這篇文章主要介紹了JS如何在數(shù)組指定位置插入元素,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03

最新評論

南昌市| 沾化县| 泽州县| 星子县| 大邑县| 原阳县| 遵义县| 拜城县| 溧水县| 隆林| 黎城县| 宁河县| 黄大仙区| 遂川县| 中西区| 永寿县| 道真| 杂多县| 大关县| 祁门县| 工布江达县| 瑞安市| 呼和浩特市| 秦皇岛市| 阿合奇县| 弋阳县| 若羌县| 台安县| 宜章县| 建平县| 兴山县| 祁门县| 岳阳县| 迭部县| 莱阳市| 应城市| 罗城| 陈巴尔虎旗| 金沙县| 故城县| 滦平县|