NSString *imagePath = [[NSBundle mainBundle] resourcePath]; imagePath = [imagePath stringByReplacingOccurrencesOfString:@"/" withString:@"//"]; imagePath = [imagePath stringByReplacingOccurrencesOfString:@" " withString:@"%20"]; NSString * js = [NSString stringWithFormat:@"document.images[0].src='file:/%@//%@'",imagePath,@"test.png"]; [infoWebView stringByEvaluatingJavaScriptFromString:js]; NSString *path = [infoWebView stringByEvaluatingJavaScriptFromString:@"document.images[0].src"];
像一般情况下一样用file scheme访问就可以了
如果加载不了的话,多半是因为html页面还未加载完,你可以这样使用:
- (void)viewDidLoad { [super viewDidLoad]; UIWebView *webView = [[UIWebView alloc] initWithFrame:self.view.bounds]; webView.delegate = self; [webView loadHTMLString:@"<html><head></head><body><img class='test' width=100% height=100% src=''></body></html>" baseURL:nil]; [self.view addSubview:webView]; } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } #pragma mark - UIWebViewDelegate methods -(void)webViewDidFinishLoad:(UIWebView *)webView{ NSString *imagePath = [[NSBundle mainBundle] resourcePath]; imagePath = [imagePath stringByReplacingOccurrencesOfString:@"/" withString:@"//"]; imagePath = [imagePath stringByReplacingOccurrencesOfString:@" " withString:@"%20"]; imagePath = [NSString stringWithFormat:@"file:/%@//%@",imagePath,@"test.png"]; NSString * js = [NSString stringWithFormat:@"document.images[0].src='%@'",imagePath]; [webView stringByEvaluatingJavaScriptFromString:js]; NSString *path = [webView stringByEvaluatingJavaScriptFromString:@"document.body.innerHTML"]; NSLog(@"%@",path); }
CSDN资源下载页