我需要获取当前页面UIWebView中的全部图片url。
代码如下:
- (void)webViewDidFinishLoad:(UIWebView*)webView {
NSString *firstImageUrl = [self.webView stringByEvaluatingJavaScriptFromString:@"var images = document.getElementsByTagName('img');images[0].src.toString();"];
NSString *imageUrls = [self.webView stringByEvaluatingJavaScriptFromString:@"var images= document.getElementsByTagName('img');var imageUrls = "";for(var i = 0; i < images.length; i++){var image = images[i];imageUrls += image.src;imageUrls += \\’,\\’;}imageUrls.toString();"];
NSLog(@"firstUrl : %@", firstImageUrl);
NSLog(@"images : %@",imageUrls);
}
第一个NSLog返回了正确的结果,但是第二个NSLog返回空:
2013-01-25 00:51:23.253 WebDemo[3416:907] firstUrl: https://www.paypalobjects.com/en_US/i/scr/pixel.gif
2013-01-25 00:51:23.254 WebDemo[3416:907] images :
不知道问题出在哪儿了,请高手指点。
在加载的webview html源码中运行一个正则表达式来实现:
(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellId = @"Cell";
Cell *cell=[table dequeueReusableCellWithIdentifier:CellId];
if (cell==nil) {
[[NSBundle mainBundle]loadNibNamed:@"Cell" owner:self options:nil];
cell=self.custom;
}
// Get the event corresponding to the current index path and configure the table view cell.
Student *stu = (Student *)[dataarr objectAtIndex:indexPath.row];
cell.item.text = [stu name];
cell.rate.text = [stu rate];
currentindex=indexPath.row;
return cell;
}
这是个基本的正则表达式,需要根据图片属性添加一些别的细节。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。