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

js仿手機(jī)頁(yè)面文件下拉刷新效果

 更新時(shí)間:2016年10月14日 11:16:30   作者:imwtr  
這篇文章主要為大家詳細(xì)介紹了js仿手機(jī)頁(yè)面文件的下拉刷新,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

最后弄出了一個(gè)簡(jiǎn)單的下拉刷新頁(yè)面的形式,還不算太復(fù)雜

要在仿真器下才能看到效果,比如chrome的里邊(或者用手機(jī)瀏覽器查看,但測(cè)試發(fā)現(xiàn)有些瀏覽器有問(wèn)題,目前手機(jī)獵豹是沒(méi)問(wèn)題的)

主要就是:

下拉-->提示松開(kāi)刷新-->松開(kāi)后-->開(kāi)始刷新-->刷新成功后還原

html,css部分

style type="text/css">
 #slideDown{margin-top: 0;width: 100%;}
   #slideDown1,#slideDown2{width: 100%;height: 70px;;background: #e9f4f7;display: none;}
   #slideDown1{height: 20px;}
   #slideDown1>p,#slideDown2>p{margin: 20px auto;text-align:center;font-size: 14px;color: #37bbf5;}
</style>


 <div id="content">
  <div id="slideDown">
   <div id="slideDown1">
    <p>松開(kāi)刷新</p>
   </div>
   <div id="slideDown2">
    <p>正在刷新 ...</p>
   </div>
  </div>
  <div class="myContent">
   <ul>
    <li>item1 -- item1 -- item1</li>
    <li>item2 -- item2 -- item2</li>
    <li>item3 -- item3 -- item3</li>
    <li>item4 -- item4 -- item4</li>
    <li>item5 -- item5 -- item5</li>
    <li>item6 -- item6 -- item6</li>
    <li>item7 -- item7 -- item7</li>
   </ul>
  </div>
 </div>

js部分:

主要就是為一個(gè)節(jié)點(diǎn)綁定事件,可以是整個(gè)body,按照實(shí)際來(lái)看

k_touch()函數(shù)是主要代碼,目前主要涉及三個(gè)事件,touchstart  touchmove  touchend

這里獲取touch點(diǎn)坐標(biāo)是用pageX,pageY 當(dāng)然不兼容的話先不考慮

因?yàn)槭窍禄潘⑿?,所以稍微控制一下way,其實(shí)也就是通過(guò)這個(gè)控制是獲取pageX 還是pageY

滑一滑可以直接看到dist的變化,其實(shí)就把它看做px了吧

更多的功能,以后再說(shuō)吧..

<script type="text/javascript">
 //第一步:下拉過(guò)程
 function slideDownStep1(dist){ // dist 下滑的距離,用以拉長(zhǎng)背景模擬拉伸效果
  var slideDown1 = document.getElementById("slideDown1"),
   slideDown2 = document.getElementById("slideDown2");
  slideDown2.style.display = "none";
  slideDown1.style.display = "block";
  slideDown1.style.height = (parseInt("20px") - dist) + "px";
 }
 //第二步:下拉,然后松開(kāi),
 function slideDownStep2(){ 
  var slideDown1 = document.getElementById("slideDown1"),
   slideDown2 = document.getElementById("slideDown2");
  slideDown1.style.display = "none";
  slideDown1.style.height = "20px";
  slideDown2.style.display = "block";
  //刷新數(shù)據(jù)
  //location.reload();
 }
 //第三步:刷新完成,回歸之前狀態(tài)
 function slideDownStep3(){ 
  var slideDown1 = document.getElementById("slideDown1"),
   slideDown2 = document.getElementById("slideDown2");
  slideDown1.style.display = "none";
  slideDown2.style.display = "none";
 }

 //下滑刷新調(diào)用
 k_touch("content","y");
 //contentId表示對(duì)其進(jìn)行事件綁定,way==>x表示水平方向的操作,y表示豎直方向的操作
 function k_touch(contentId,way){ 
  var _start = 0,
   _end = 0,
   _content = document.getElementById(contentId);
  _content.addEventListener("touchstart",touchStart,false);
  _content.addEventListener("touchmove",touchMove,false);
  _content.addEventListener("touchend",touchEnd,false);
  function touchStart(event){ 
   //var touch = event.touches[0]; //這種獲取也可以,但已不推薦使用

   var touch = event.targetTouches[0];
   if(way == "x"){ 
    _start = touch.pageX;
   }else{ 
    _start = touch.pageY;
   }
  }
  function touchMove(event){ 
   var touch = event.targetTouches[0];
   if(way == "x"){ 
    _end = (_start - touch.pageX);
   }else{ 
    _end = (_start - touch.pageY);
    //下滑才執(zhí)行操作
    if(_end < 0){
     slideDownStep1(_end);
    }
   }

  }
  function touchEnd(event){ 
   if(_end >0){ 
    console.log("左滑或上滑 "+_end);
   }else{ 
    console.log("右滑或下滑"+_end);
    slideDownStep2();
    //刷新成功則
    //模擬刷新成功進(jìn)入第三步
    setTimeout(function(){ 
     slideDownStep3();
    },2500);
   }
  }
 }
</script>

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

遵义市| 南岸区| 始兴县| 溧阳市| 汝州市| 时尚| 章丘市| 界首市| 三河市| 榕江县| 依安县| 射洪县| 昌都县| 辽源市| 大兴区| 刚察县| 永平县| 澄迈县| 长武县| 合作市| 邵武市| 伽师县| 桐城市| 乌什县| 茂名市| 龙海市| 湘乡市| 西华县| 吐鲁番市| 奇台县| 孟州市| 武川县| 沙雅县| 宜城市| 泾源县| 陵水| 许昌县| 彰化市| 远安县| 浏阳市| 崇文区|