检查UIWebView中是否存在类

trx*_*x25 1 javascript iphone ipad ios4

我想使用javascript来检查UIWebView中是否存在类.这是我到目前为止:

NSString* checkForWaldoCmd = [[NSString alloc] initWithString:@"document.getElementsByClassName('waldo');"];
NSString* wheresWaldo = [myUIWebView stringByEvaluatingJavaScriptFromString:checkForWaldoCmd];
Run Code Online (Sandbox Code Playgroud)

我基本上想要检查页面中是否存在"waldo"类.当我运行上面的代码时,无论类是否存在,我都会得到一个空白字符串.有什么建议?

fsa*_*int 5

使用stringByEvaluatingJavaScriptFromString的主要技巧是:计算求值类型的表达式可以很容易地转换为字符串(本机简单类型通常可以工作:float,int和string).在你的例子中,@"document.getElementsByClassName('waldo');" 将是没有简单字符串表示的NodeList类型,这就是为什么你得到一个空字符串.例如,尝试使用类waldo获取元素列表的长度:

NSString *count = [myUIWebView stringByEvaluatingJavaScriptFromString:@"document.getElementsByClassName('waldo').length;"];
if ([count intValue] > 0){
   NSLog(@"Have elements of class waldo");
}else{
   NSLog(@"Don't have elements of class waldo");
}
Run Code Online (Sandbox Code Playgroud)