私のuiwebviewに行を指定してロードします。 Iは、[WebViewのstringByEvaluatingJavaScriptFromString: "window.scrollToは(0.0、 100.0)" @]uiwebviewのスクロール位置を設定する方法
を試みました。
でも機能しません。私のwebviewはまだページの上から始まります。 私はUIWebview
をUIView
の中にロードするので、私はそれだけのことを思っています。 私UIView
に以下の私のコードをチェックしてください:
- (void)loadView {
webview = [[WebViewDetail alloc]initWithFrame:[UIScreen mainScreen].applicationFrame]; //initialize a mainView is a UIWebVIew
webview.managedObjectContext = self.managedObjectContext;
webview.kitab = self.kitab;
webview.currentPasal = self.pasal;
self.title = [NSString stringWithFormat:@"%@ %d", self.kitab, webview.currentPasal];
self.view=webview; //make the mainView as the view of this controller
}
と私は私のUIWebView
のスクロール位置スクリプトを置く:私は私のUIWebViewは、ページの一番下に移動置きたい、この場合に
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
int height = [[webView stringByEvaluatingJavaScriptFromString:@"document.body.offsetHeight;"] intValue];
NSString* javascript = [NSString stringWithFormat:@"window.scrollBy(0, %d);", height];
[self stringByEvaluatingJavaScriptFromString:javascript];
}
ビューがロードされたとき。 しかし、それはまったく動作しません。 私は間違っているのですか?
私は私のUIWebViewでwebViewDidFinishLoadの上に置くと、その動作していない、スクロールはまだページの最上部に表示されます。他のアイデア? – dejoong
@dejoong:あなたのページはスクロール可能ですか? 'webViewDidFinishLoad'の後に何かがスクロールするかどうかを調べるために、1秒後にタイマーを起動するように設定してみてください。 – Dani
tatz weird Dani、(webview.scrollView.contentOffset = CGPointMake(0、100);を含む)メソッドを起動すると、1秒ごとに動作しますが、メソッドが直接呼び出されても動作しません。なぜあなたは知っていますか? – dejoong