禁止web页面在ios中整屏上下弹动

禁止body或者可滑动元素的 touchmove 事件

例: vue

this.$nextTick(() => {
	// 通过refs拿到dom元素, 给dom元素绑定touchmove事件, 其内容做操作
	this.$refs.dom.addEventListener('touchmove', function (e) {
		if (!e.isSCROLL) {
			e.preventDefault(); //阻止默认事件(上下滑动)
		} else {
			// 需要滑动的区域
			let top = el.scrollTop; // 对象最顶端和窗口最顶端之间的距离
			let scrollH = el.scrollHeight; // 含滚动内容的元素大小
			let offsetH = el.offsetHeight; // 网页可见区域高
			let cScroll = top + offsetH; // 当前滚动的距离
			//被滑动到最上方和最下方的时候
			if (top == 0) {
				top = 1; //0~1之间的小数会被当成0
			} else if (cScroll === scrollH) {
				el.scrollTop = top - 0.1;
		 	}
		}
	})
})

转载: https://blog.csdn.net/qq_40717869/article/details/81749970

你可能感兴趣的:(vue,移动端)