婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > html5觸摸事件判斷滑動方向的實現

html5觸摸事件判斷滑動方向的實現

熱門標簽:威海營銷外呼系統招商 鄭州電銷外呼系統違法嗎 跟電銷機器人做同事 農村住宅地圖標注 濟南辦理400電話 ai電銷機器人連接網關 鶴壁手機自動外呼系統怎么安裝 中紳電銷智能機器人 漳州人工外呼系統排名

為了給觸摸界面提供有力支持, 觸摸事件提供了響應用戶對觸摸屏或者觸摸板上操作的能力.

接口

TouchEvent

TouchEvent 是一類描述手指在觸摸平面(觸摸屏、觸摸板等)的狀態變化的事件。這類事件用于描述一個或多個觸點,使開發者可以檢測觸點的移動,觸點的增加和減少,等等。每 個 Touch 對象代表一個觸點; 每個觸點都由其位置,大小,形狀,壓力大小,和目標 element 描述。 TouchList 對象代表多個觸點的一個列表.

觸摸事件的類型

為了區別觸摸相關的狀態改變,存在多種類型的觸摸事件。可以通過檢查觸摸事件的 TouchEvent.type 屬性來確定當前事件屬于哪種類型

  1. touchstart:當用戶在觸摸平面上放置了一個觸點時觸發。
  2. touchend:當一個觸點被用戶從觸摸平面上移除(當用戶將一個手指離開觸摸平面)時觸發。
  3. touchmove:當用戶在觸摸平面上移動觸點時觸發。
  4. touchcancel:當觸點由于某些原因被中斷時觸發。

判斷滑動方向

基本原理就是記錄開始滑動(touchStart)和結束滑動(touchEnd)的坐標位置,然后進行相對位置的計算。

touchStart:function(e){
    startX = e.touches[0].pageX;
    startY = e.touches[0].pageY;
    e = e || window.event;
 },
touchEnd:function(e){
    const that = this;
    endX = e.changedTouches[0].pageX;
    endY = e.changedTouches[0].pageY;
    that.upOrDown(startX,startY,endX,endY);
},
upOrDown:function (startX, startY, endX, endY) {
    const that = this;
    let direction = that.GetSlideDirection(startX, startY, endX, endY);
    switch(direction) {
      case 0:
        console.log("沒滑動");
        break;
      case 1:
        console.log("向上");
        break;
      case 2:
        console.log("向下");
        break;
      case 3:
        console.log("向左");
        break;
      case 4:
        console.log("向右");
        break;
      default:
        break;
    }
  },
//根據起點和終點返回方向 1:向上,2:向下,3:向左,4:向右,0:未滑動
  GetSlideDirection:function (startX, startY, endX, endY) {
    const that = this;
    let dy = startY - endY;
    let dx = endX - startX;
    let result = 0;
    //如果滑動距離太短
    if(Math.abs(dx) < 2 && Math.abs(dy) < 2) {
      return result;
    }
    let angle = that.GetSlideAngle(dx, dy);
    if(angle >= -45 && angle < 45) {
      result = 4;
    }else if (angle >= 45 && angle < 135) {
      result = 1;
    }else if (angle >= -135 && angle < -45) {
      result = 2;
    }
    else if ((angle >= 135 && angle <= 180) || (angle >= -180 && angle < -135)) {
      result = 3;
    }
    return result;
  },
  //返回角度
  GetSlideAngle:function (dx, dy) {
    return Math.atan2(dy, dx) * 180 / Math.PI;
  }

原生JS方法

除了H5新增的方法外,還可以用原生JS判斷view的滑動方向,代碼如下(可直接運行):

要注意的是chrome對document.body.scrollTop一直是0,需要改成document.documentElement.scrollTop

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title> 腳本之家(jb51.net)</title>
  <style>
    div {
      border: 1px solid black;
      width: 200px;
      height: 100px;
      overflow: scroll;
    }
  </style>
</head>
<body style="overflow: scroll">
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<h1>HEllo word</h1>
<script>
  function scroll( fn ) {
    var beforeScrollTop = document.documentElement.scrollTop,
      fn = fn || function() {};
    console.log('beforeScrollTop',beforeScrollTop);
    window.addEventListener("scroll", function() {
      var afterScrollTop = document.documentElement.scrollTop,
        delta = afterScrollTop - beforeScrollTop;
      console.log('beforeScrollTop',beforeScrollTop);
      console.log('afterScrollTop',afterScrollTop);
      if( delta === 0 ) return false;
      fn( delta > 0 ? "down" : "up" );
      beforeScrollTop = afterScrollTop;
    }, false);
  }

  scroll(function(direction) { console.log(direction) });
</script>

</body>
</html>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:惠州 咸陽 文山 萍鄉 甘南 蘇州 紅河 營口

巨人網絡通訊聲明:本文標題《html5觸摸事件判斷滑動方向的實現》,本文關鍵詞  html5,觸摸,事件,判斷,滑動,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《html5觸摸事件判斷滑動方向的實現》相關的同類信息!
  • 本頁收集關于html5觸摸事件判斷滑動方向的實現的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    精品一区二区三区视频在线观看| 亚洲成人动漫一区| 亚洲第一狼人社区| 色偷偷久久人人79超碰人人澡 | 亚洲色图.com| 国产盗摄一区二区| 91美女视频网站| 一本色道综合亚洲| 亚洲欧洲一区二区三区| 国产精品77777| 欧美精品一区二| 日本一区二区三区dvd视频在线| 欧美精品日韩一本| 欧美人狂配大交3d怪物一区| 色域天天综合网| 亚洲日本欧美天堂| 色欧美日韩亚洲| 综合在线观看色| 婷婷六月综合网| 不卡一区在线观看| 欧美一区午夜精品| 日韩一本二本av| 欧美一区二区性放荡片| 精品视频全国免费看| 男人操女人的视频在线观看欧美| 日日摸夜夜添夜夜添国产精品| 91影院在线观看| 欧美日韩三级视频| 国产精品白丝jk黑袜喷水| 国产成人aaa| 91久久精品网| 久久伊人中文字幕| 夫妻av一区二区| 国产99久久久久| 久久午夜老司机| 日韩欧美国产综合一区| 国产精品欧美一区二区三区| 亚洲日本欧美天堂| 欧美精品久久99| 久久午夜羞羞影院免费观看| 国产精品萝li| 久久99九九99精品| 久久国产精品99精品国产| 国产日韩欧美亚洲| 亚洲综合丝袜美腿| 中文字幕一区二| 精品成人佐山爱一区二区| 亚洲视频一区在线| 欧美视频一区二区三区四区| 久久青草国产手机看片福利盒子| 国产一区二区三区黄视频 | 一区二区三区.www| 大胆亚洲人体视频| 午夜欧美大尺度福利影院在线看| 日韩美女主播在线视频一区二区三区 | 色综合天天综合网国产成人综合天 | 国产精品国产三级国产普通话99 | 在线观看中文字幕不卡| 欧美亚洲日本一区| 亚洲国产精品v| 老司机免费视频一区二区| 久久女同互慰一区二区三区| 国产欧美一区二区精品久导航| 激情图片小说一区| 国产日韩欧美精品在线| 九色综合狠狠综合久久| 欧美亚洲动漫制服丝袜| 美女视频一区二区| 国产精品久久久久四虎| 日本乱人伦一区| 天天影视涩香欲综合网| 国产麻豆一精品一av一免费| 一区二区三区国产豹纹内裤在线| 久久网站热最新地址| 欧美日韩卡一卡二| 国产91综合一区在线观看| 亚洲欧美一区二区三区国产精品| 久久国产精品99久久人人澡| 一区二区三区四区av| 九一九一国产精品| 一区二区欧美视频| 欧美人妇做爰xxxⅹ性高电影| 国产一区二区在线免费观看| 日韩精品资源二区在线| 国产福利一区在线| 免费国产亚洲视频| 91麻豆精品国产91久久久久久 | 欧美日韩www| 亚洲女同一区二区| 亚洲色图一区二区| 欧美国产一区二区| 久久视频一区二区| 亚洲欧洲另类国产综合| 国产精品久久久久久久久免费丝袜| www激情久久| 国产亚洲自拍一区| 欧美性淫爽ww久久久久无| 欧美日韩精品福利| 欧美三级蜜桃2在线观看| 国产乱子轮精品视频| 久久综合色之久久综合| 中文字幕成人av| 欧美精品 国产精品| 伊人色综合久久天天人手人婷| 亚洲第一综合色| 99re8在线精品视频免费播放| 欧美午夜精品理论片a级按摩| 91精品国产综合久久福利软件| 国产 欧美在线| 奇米888四色在线精品| 成人av综合一区| 国产三级一区二区| 久久久久久久久久美女| 国产精品国产三级国产普通话蜜臀| 天天色天天爱天天射综合| 国产精品三级电影| 亚洲欧美另类久久久精品| 午夜精品久久久久影视| 一本到一区二区三区| 有码一区二区三区| 99精品国产91久久久久久| 美女视频一区二区三区| 日韩毛片视频在线看| 在线一区二区三区四区五区| 久久久一区二区三区捆绑**| 亚洲夂夂婷婷色拍ww47| 日韩电影免费在线看| 制服丝袜中文字幕亚洲| 亚洲欧美在线视频| 亚洲蜜臀av乱码久久精品蜜桃| 午夜影院久久久| 国产精品国产a| 亚洲一区二区三区不卡国产欧美| 在线精品视频免费观看| 亚洲成a人片在线观看中文| 国产精品综合网| 精品久久久久99| 亚洲国产高清aⅴ视频| 色综合婷婷久久| 欧美在线一区二区三区| 石原莉奈在线亚洲二区| 国产精品高清亚洲| 17c精品麻豆一区二区免费| 黄色资源网久久资源365| 欧美伊人久久大香线蕉综合69| 国产在线乱码一区二区三区| 日韩欧美电影在线| 国产精品白丝av| 亚洲欧美激情小说另类| 日韩女同互慰一区二区| 亚洲三级在线看| 99精品黄色片免费大全| 884aa四虎影成人精品一区| 91香蕉视频污在线| 欧洲亚洲精品在线| 国产午夜精品理论片a级大结局| 久久久久久**毛片大全| 欧美国产禁国产网站cc| 国产91丝袜在线18| 粉嫩高潮美女一区二区三区| 欧美精品久久久久久久多人混战| 3d成人h动漫网站入口| 午夜视频在线观看一区二区 | 宅男在线国产精品| 欧美日韩第一区日日骚| 欧美一区二区私人影院日本| 久久久综合九色合综国产精品| 日韩视频国产视频| 日韩欧美国产一区二区三区| 国产xxx精品视频大全| 亚洲欧美日韩国产成人精品影院| 欧美怡红院视频| 东方欧美亚洲色图在线| 亚洲国产欧美日韩另类综合| 欧美一区二区高清| 欧美三级电影网| www.99精品| 麻豆精品视频在线| 亚洲男人都懂的| 国产精品私人自拍| 久久久久久综合| 91精品在线观看入口| 91麻豆免费观看| 91亚洲午夜精品久久久久久| 国产一区二区在线影院| 国产精品一区二区黑丝| 日本欧洲一区二区| 亚洲韩国一区二区三区| 亚洲欧洲www| 一区二区三区资源| 日韩欧美专区在线| 精品国产91乱码一区二区三区 | 久99久精品视频免费观看| 日韩高清在线观看| 不卡的av网站| 亚洲资源中文字幕| 精品久久久久久久久久久久久久久| 日韩电影在线观看一区| 777亚洲妇女| 中文字幕一区av|