在UIWebView中滚动网页

时间:2009-07-15 14:46:02

标签: javascript iphone objective-c uiwebview

我将UIWebViewUIButton添加为我的视图的子视图。我的UIWebView内还显示了一个大型网页,是否可以点击UIView上的按钮滚动网页?

我想让网页滚动,直到它到达文档的底部。

要使用的javascript是:window.scrollTo(xPos, yPos);

是否可以对按钮操作进行javascript调用,该操作将滚动UIWebView内的Web文档?

3 个答案:

答案 0 :(得分:5)

您可以在UIWebview组件上使用它:

NSString *yourScript = [NSString stringWithFormat:@"javascript_method();"]; 
NSString* responseJS = [webView stringByEvaluatingJavaScriptFromString:yourScript];

答案 1 :(得分:1)

通过Objective-C调用JavaScript滚动UIWebView:

NSString *script = @"scrollTo(0, 0)";
[webView stringByEvaluatingJavaScriptFromString:script];

为了平滑滚动,请使用像jQuery这样的库:

NSString *script = @"$('html, body').animate({scrollTop:0}, 'slow')";
[webView stringByEvaluatingJavaScriptFromString:script];

答案 2 :(得分:0)

当我想以编程方式滚动UIWebview时,我有类似的要求,因为我无法控制我正在加载的网页。我想用一种方法在我的ObjC代码中做到这一点。

解决方案:  UIWebview有自己的UIScrollView我们可以使用它 1.将_webview的边缘插图设置为您想要的任何内容。 2.然后告诉_webview滚动到指定的位置。

[[_webView scrollView]setContentInset:UIEdgeInsetsMake(-300, 0, 0, 0)];
[[_webView scrollView]scrollRectToVisible:CGRectMake(0, -300, 768, 1024) animated:YES];