检查UIWebView中是否存在类

时间:2011-01-02 23:20:24

标签: javascript ipad ios4 iphone

我想使用javascript来检查UIWebView中是否存在类。这就是我到目前为止所做的:

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

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

1 个答案:

答案 0 :(得分: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");
}