「preventDefault()」なしでスワイプするのと同じ問題があります。pulltorefresh の効果を達成したいので、pullup ではなく、pulldown イベントのみを防ぐことができます。このようなコード:
function touchBindMove(evt){
//evt.preventDefault();
try{
var deviceHeight = window.innerHeight;
var touch = evt.touches[0]; //获取第一个触点
var x = Number(touch.pageX); //页面触点X坐标
var y = Number(touch.pageY); //页面触点Y坐标
//记录触点初始位置
if((y - offsetStart) > 0 && document.body.scrollTop == 0){
evt.preventDefault();
var page = document.getElementsByClassName('tweet-page')[0];
var rate = 0;
end = x;
offsetEnd = y;
rate = (offsetEnd - offsetStart) / (2 * deviceHeight);
//tool.print(rate);
easing.pullMotion(page, rate);
}
}catch(e){
alert(e.message);
}
}
「y - offsetStart」はイベントがプルダウンかどうかを判断し、「document.body.scrollTop == 0」はスクロールバーが中央にあるかどうかを判断します。多分それはあなたを少し助けることができます。