पर स्क्रॉल स्थिति सेट करने के लिए कैसे मैं अपने uiwebview लोड लाइन पर निर्दिष्ट लाइन पर जाना चाहता हूं। मैंuiwebview
की कोशिश की [WebView stringByEvaluatingJavaScriptFromString: @ "window.scrollTo (0.0, 100.0)"];
लेकिन यह काम नहीं कर रहा है। मेरा वेबव्यू अभी भी पृष्ठ के शीर्ष से शुरू होता है। मुझे बस आश्चर्य है क्योंकि मैं 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 अजीब दानी, जब मैं विधि को आग लगाता हूं (webview.scrollView.contentOffset = CGPointMake (0, 100);) प्रत्येक 1sec इसके काम कर रहा है, लेकिन अगर मैं सीधे विधि को कॉल नहीं कर रहा हूं। क्या तुम घुटने टेकते हो? – dejoong