我在我的html文件中放置了以下javascript。
<script TYPE="text/javascript">
function srk(){
document.ontouchmove = function(e){
e.preventDefault();
}
}
</script>
我通过一些动画跟踪代码来滚动我的webview。
[myWebView stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat: @"window.scrollTo(0,%i);",414*self.initialScrollPosition]];
一切顺利,但我面临的问题如下。
每当用户/我点击iPhone的状态栏时,WebView Bydefault就会滚动到顶部。 这不应该这样做。
是否可以防止内置功能?
我知道其中一个选项如下。
((UIScrollView *)[[myWebView valueForKey:@"_internal"] valueForKey:@"scroller"]).scrollsToTop = NO;
但它有效吗?
答案 0 :(得分:4)
您可以在窗口中添加非常小的UIScrollView。然后点击状态栏不会将Web视图滚动到顶部。
答案 1 :(得分:1)
更直接的方法是将scrollsToTop
中UIScrollView
的{{1}}属性设置为NO。
WebView
我在iOS 4.0和4.3上测试了这个(iOS 5似乎不需要这个)。
改编自this。