내 objective-C 응용 프로그램에서 webkit 프레임을 호스팅하고 있고 stringByEvaluatingJavaScriptFromString을 사용하여로드 된 문서에서 일부 자바 스크립트를 실행하려고합니다. document.getElementsByTagName ('*') 또는 document.getElementsByTagName ('a')에 대한 모든 호출은 내 웹 뷰에서로드하는 페이지에 관계없이 0 길이 컬렉션을 반환합니다. 다른 문서 메서드가 작동하는 것 같습니다 (document.title, document.location.href 등). 스크립트는 Safari에서 올바른 값을 반환합니다. 내 웹 뷰가 아닙니다.Webkit javascript 평가에서 다른 문서 객체가 사용됩니까?
- (void)webView:(WebView *)webview didFinishLoadForFrame:(WebFrame *)frame{
NSLog(@"anchor elements: %@", [webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByTagName('a').length + '';"]);
}
(경우에 당신이 궁금는 + '문자열로 길이 강요하는 데 사용됩니다')
나는 또한 동일한 결과가 반환과
[[webView windowScriptObject] evaluateWebScript:@"document.getElementsByTagName('*').length + '';"]
을 해봤를 0 아무도 모르는 일이 있습니까?