移動端禁止滾動

來源:互聯網
上載者:User

標籤:class   fun   獲得   預設   螢幕   date   表示   eve   start   

var startPos = 0,endPos = 0,isScrolling = 0;document.addEventListener(‘touchstart‘,function(event){var touch = event.targetTouches[0]; //touches數組對象獲得螢幕上所有的touch,取第一個touchstartPos = {x:touch.pageX,y:touch.pageY,time:+new Date}; //取第一個touch的座標值isScrolling = 0; //這個參數判斷是垂直滾動還是水平滾動}, false);//解除綁定事件 web前端開發document.addEventListener(‘touchend‘,function(event){document.removeEventListener(‘touchmove‘,this,false);document.removeEventListener(‘touchend‘,this,false);}, false);document.addEventListener(‘touchmove‘,function(event){//當螢幕有多個touch或者頁面被縮放過,就不執行move操作if(event.targetTouches.length > 1 || event.scale && event.scale !== 1) return;var touch = event.targetTouches[0];endPos = {x:touch.pageX - startPos.x,y:touch.pageY - startPos.y};// alert(Math.abs(endPos.x)+"----"+Math.abs(endPos.y));isScrolling = Math.abs(endPos.x) < Math.abs(endPos.y) ? 1:0; //isScrolling為1時,表示縱向滑動,0為橫向滑動if(isScrolling === 0){// event.preventDefault(); //阻止觸摸事件的預設行為,即阻止滾屏}if(Math.abs(endPos.x) > 5){event.preventDefault(); //橫向滑動禁止}}, false);// 禁止頁面滾動// document.body.addEventListener(‘touchmove‘, function (event) {// event.preventDefault();// }, true);

 

移動端禁止滾動

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.