国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

原生js實現移動端觸摸輪播的示例代碼

2019-11-19 14:40:11
字體:
來源:轉載
供稿:網友

PC端上實現圖片輪播效果很簡單,只要通過使用click事件就可以非常簡單的實現效果,但是在移動端上,就要通過核心的touch事件來實現。

下面是移動端手指滑動輪播圖的完整代碼。

<!DOCTYPE html> <html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"><style>*{margin:0;padding:0;}li{list-style:none;}.lb{width:320px;height:130px;position:relative;margin:20px auto;overflow: hidden;}.lb .lb_img{width:2240px;height:130px;position:absolute;left:-320px;}.lb .lb_img img{width:320px;height:130px;float:left;display:block;}.lb ul{width:35px;height:4px;position:absolute;bottom:10px;left:50%;margin-left:-15px;}.lb ul li{width:4px;height:4px;border-radius:2px;border:0.25px solid #fff;margin-left:2.5px;background:#666;float:left;cursor:pointer;}.lb ul .active{background:#fff;}.lb ul li:hover{background:#fff;}</style></head><body><div class="lb">		<div class="lb_img">			<img src="img/4.jpg">			<img src="img/0.jpg">			<img src="img/1.jpg">			<img src="img/2.jpg">			<img src="img/3.jpg">			<img src="img/4.jpg">			<img src="img/0.jpg">		</div>		<ul>			<li class="active"></li>			<li></li>			<li></li>			<li></li>			<li></li>		</ul></div>	<script>var lb = document.querySelector(".lb");var lb_img = document.querySelector(".lb .lb_img");var img = document.querySelectorAll(".lb .lb_img img")var lis = document.querySelectorAll(".lb ul li");var i=2; // 初始化手指坐標點 var startPoint = 0; var startEle = 0; //手指按下 lb.addEventListener("touchstart",function(e){ startPoint = e.changedTouches[0].pageX; startEle = lb_img.offsetLeft; clearInterval(Time) });  //手指滑動 lb.addEventListener("touchmove",function(e){ var currPoint = e.changedTouches[0].pageX;  var disX = currPoint - startPoint; var left = startEle + disX; lb_img.style.left = left + "px";  }); //當手指抬起的時候, lb.addEventListener("touchend",function(e){ 	var currPoint = e.changedTouches[0].pageX; 	var disX = - (currPoint - startPoint); var left = startEle + disX; if(disX > 150){ 		i++;	 	for(var q=0;q<lis.length;q++){	  lis[q].className = ''; 	 }	 if(i == 7){	 	i=2;	 }	 lis[i-2].className= "active" ;	 	 	lb_img.style.left = -320*(Math.round(disX/320)+i+1)+ 'px'; 		 }else{ 	lb_img.style.left = -320*(i-1) + "px"; } if(disX < -150){ 	i--; 	for(var q=0;q<lis.length;q++){  lis[q].className = '';  }  if(i == 1){ 		i=6; 	} 	lis[i-2].className= "active" ; 		 	lb_img.style.left = -320*(Math.round(-disX/320)+i-2) + 'px';	 	 }else{ 	lb_img.style.left = -320*(i-1) + "px"; } Time=setInterval(autoplay,2000); })//設置定時器Time=setInterval(autoplay,2000); function autoplay(){ i++; for(var q=0;q<lis.length;q++){ lis[q].className = '';  } if(i == 7){ i=2; } lis[i-2].className= "active" ;  for(var a=0; a<320;a++){  setTimeout(function(){   var left = lb_img.style.left ? lb_img.style.left : "-320px";   left = parseInt(left)-1;   if(left<-1920){   left=-321;   }   lb_img.style.left = left + "px";  },a); } }</script></body></html>

以上這篇原生js實現移動端觸摸輪播的示例代碼就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 枣强县| 宣恩县| 揭西县| 大洼县| 遂平县| 涪陵区| 保靖县| 宾阳县| 泰顺县| 土默特左旗| 高碑店市| 武宁县| 石林| 汝州市| 阳高县| 邵阳县| 资源县| 阳谷县| 汝南县| 灌南县| 巴林左旗| 西青区| 青河县| 高安市| 临西县| 来宾市| 杭锦后旗| 芜湖市| 濮阳市| 榕江县| 大宁县| 墨脱县| 永平县| 三原县| 武穴市| 七台河市| 东乌珠穆沁旗| 萨迦县| 雷州市| 安吉县| 蒲城县|