標籤: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);
移動端禁止滾動