javascript
html游戏禁止微信浏览器下拉,JavaScript实现禁止微信浏览器下拉回弹效果
這篇文章主要為大家詳細(xì)介紹了JavaScript禁止微信瀏覽器下拉回彈效果的方法,具有一定的參考和學(xué)習(xí)JavaScript的價(jià)值,對(duì)JavaScript感興趣的小伙伴們可以參考一下本篇文章
本文實(shí)例為大家分享了JavaScript禁止微信瀏覽器下拉回彈的效果,供大家參考,具體內(nèi)容如下
方法1:
var overscroll = function(el){
el.addEventListener('touchstart', function(){
var top = el.scrollTop;
var totalScroll = el.scrollHeight;
var currentScroll = top + el.offsetHeight;
if(top === 0) {
el.scrollTop = 1;
}else if(currentScroll === totalScroll){
el.scrollTop = top - 1;
}
});
el.addEventListener('touchmove', function(evt){
if(el.offsetHeight < el.scrollHeight){
evt._isScroller = true;
}
});
}
overscroll(document.querySelector('.scroll'));//哪里需要可以局部滾動(dòng),添加一個(gè)“scroll”的class
document.body.addEventListener('touchmove', function(evt) {
if(!evt._isScroller){
evt.preventDefault();
}
});
此方法的優(yōu)缺點(diǎn):
優(yōu)點(diǎn):支持局部滾動(dòng);
缺點(diǎn):瀏覽器本身超出頁面出現(xiàn)的滾動(dòng)被禁用掉了,需要改為局部滾動(dòng),且局部滾動(dòng)的地方需要加“scroll”的class。
注:如果同一個(gè)頁面多個(gè)局部滾動(dòng),需要將overscroll(document.querySelector('.scroll');
改為for(var i=0;i
overscroll(document.querySelectorAll('.scroll')[i]);
}
方法2:
function stopDrop(){
var lastY;//最后一次y坐標(biāo)點(diǎn)
$(document.body).on('touchstart', function(event) {
lastY = event.originalEvent.changedTouches[0].clientY;//點(diǎn)擊屏幕時(shí)記錄最后一次Y度坐標(biāo)。
});
$(document.body).on('touchmove', function(event) {
var y = event.originalEvent.changedTouches[0].clientY;
var st = $(this).scrollTop(); //滾動(dòng)條高度
if (y >= lastY && st <= 10) {//如果滾動(dòng)條高度小于0,可以理解為到頂了,且是下拉情況下,阻止touchmove事件。
lastY = y;
event.preventDefault();
}
lastY = y;
});
}
此方法的優(yōu)缺點(diǎn):
優(yōu)點(diǎn):支持瀏覽器本身超出頁面的滾動(dòng)
缺點(diǎn):不支持局部滾動(dòng)
總結(jié)
以上是生活随笔為你收集整理的html游戏禁止微信浏览器下拉,JavaScript实现禁止微信浏览器下拉回弹效果的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html固定右侧显示,html+css布
- 下一篇: angularjs http和ajax,