2010-06-17 6 views
0

UIWebView에 대해 일부 자바 스크립트를 실행하려고하는데 작동하지 않는 것 같습니다. 예를 들어, 여기에 내가 시험에 사용하고 HTML의 조각이다 : 나는 그것을 대해 다음 자바 스크립트를 실행하는 경우UIWebView가 제대로 자바 스크립트를 평가하지 않습니다.

<html><body><h1>Hello World!</h1><p>It's me.</p></body></html> 

는, 반환 값은 0, 그것이 있어야 1.

var elements = document.getElementsByTagName("h1"); 
elements.length; 

다음은 webview에 사용하고있는 objc 코드입니다. '파서가'위의 자바 스크립트가 포함 된 문자열입니다 추가 조사시

[webView loadHTMLString:@"<html><body><h1>Hello World!</h1><p>It's me.</p></body></html>" baseURL:nil]; 
NSString *markupResult = [webView stringByEvaluatingJavaScriptFromString:parser]; 

답변

2

, 문제는 자바 스크립트를 호출 할 때 그 웹보기가로드를 완료하지 않은 것으로 밝혀졌다. webViewDidFinishLoad 대리자 콜백에서 javascript를 호출해야했습니다.

4

그것을

- (void)webViewDidFinishLoad:(UIWebView *)webView 
{ 
    NSString *markupResult = [webView stringByEvaluatingJavaScriptFromString:parser]; 
} 
내부 코드 다음 UIWebViewDidfinishLoading 메소드를 구현 쓰기
관련 문제