问问题
2235 次
2 回答
0
我知道这有点晚了,但我找到了解决方案:
这个问题的答案会阻止 UIWebView 中的 UIScrollView 滚动: Disable Scroll on a UIWebView allowed?
我在 MainViewController.m 的 viewDidLoad 函数中添加了这段代码
for (UIView *view in webview.subviews) {
if ([view isKindOfClass:[UIScrollView class]]) {
UIScrollView *scrollView = (UIScrollView *)view;
scrollView.scrollEnabled = NO;
}
}
下一个问题是阻止 iScroll 处理 TextArea 上的事件,为此您需要获取 iscroll 的调试版本,以便更改代码(第 3 行):
handleEvent: function (e) {
var that = this;
if(e.srcElement.tagName == "TEXTAREA") return; // don't handle textarea
switch(e.type) {
case START_EV:
if (!hasTouch && e.button !== 0) return;
that._start(e);
break;
case MOVE_EV: that._move(e); break;
case END_EV:
case CANCEL_EV: that._end(e); break;
case RESIZE_EV: that._resize(); break;
case WHEEL_EV: that._wheel(e); break;
case TRNEND_EV: that._transitionEnd(e); break;
}
}
并且也不要使用类似的 if 来阻止您的 textarea 的默认值。
这种组合对我有用。
-webkit 和溢出 css 标签只是让它看起来更好。
嗯,在 ios 4 上,滚动是由两根手指而不是一根手指完成的。
于 2012-09-23T12:09:12.607 回答
0
问题源于我认为您正在尝试执行的操作并禁用应用程序的“框架”从屏幕外滚动:
document.addEventListener('touchmove', function(e) {
e.preventDefault();
}, false);
不幸的是,我已经尝试了所有我能想到的组合,包括新的-webkit-overflow-scrolling: touch
CSS 属性(无济于事)。还没有找到解决办法。
于 2012-02-13T11:20:37.457 回答