[IOS]Uiwebview+js交互 之圖片點(diǎn)擊事件

剛參加工作的時(shí)候,在csdn上寫過類似的文章,今天維護(hù)代碼,覺得還是有一點(diǎn)價(jià)值的,特來分享一下,大家多拍磚。

111.gif

step1:準(zhǔn)備js文件


functionsetImageClickFunction(){

varimgs = document.getElementsByTagName("img");

for(vari=0;i

varsrc = imgs[i].src;

imgs[i].setAttribute("onClick","getImg(src)");

}

document.location = imageurls;}

functiongetImg(src){

varurl=src;

document.location = url;

}

這段js代碼的作用是遍歷網(wǎng)頁源碼中“img” 節(jié)點(diǎn),并為每個(gè)節(jié)點(diǎn)添加一個(gè)事件。

- (void)viewDidLoad {
[superviewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
UIWebView*web=[[UIWebViewalloc]initWithFrame:self.view.frame];
[self.viewaddSubview:web];
web.delegate=self;
[webstringByEvaluatingJavaScriptFromString:[NSStringstringWithContentsOfURL:[[NSBundlemainBundle]URLForResource:@"Findimg"withExtension:@"js"]encoding:NSUTF8StringEncodingerror:nil]];
[webloadRequest:[NSURLRequestrequestWithURL:[NSURLURLWithString:@"http://www.itdecent.cn/p/316631f145d6"]]];
}
-(void)webViewDidFinishLoad:(UIWebView*)webView
{
[webViewstringByEvaluatingJavaScriptFromString:@"setImageClickFunction()"];
}
-(BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType
{
NSString*path=[[requestURL]absoluteString];
NSLog(@"%@",path);
if([pathrangeOfString:@"jpg"].location!=NSNotFound)//添加關(guān)鍵字進(jìn)行是否跳轉(zhuǎn)的篩選
{
ImgShowViewController* img=[[ImgShowViewControlleralloc]init];
img.imgUrl=path;
[selfpresentViewController:imganimated:YEScompletion:nil];
return NO;
}
else
{
return YES;
}
}

讓webview加載定義好的js文件 在完成的時(shí)候,stringByEvaluatingJavaScriptFromString方法嵌入頁面中

最后用于得到uiwebview所有的鏈接,yes no 決定是否跳轉(zhuǎn),判斷條件可以用jpg,png后綴做判斷

這樣在Uiwebview中點(diǎn)擊圖片,會得到圖片的url之后就交給你了~~

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 剛參加工作的時(shí)候,在csdn上寫過類似的文章,今天維護(hù)代碼,覺得還是有一點(diǎn)點(diǎn)價(jià)值的,特來分享一下,大家多拍磚。 準(zhǔn)...
    KKKKaras閱讀 3,040評論 8 17
  • 一、簡介 近兩年隨著HTML5的迅速發(fā)展與日趨成熟,越來越多的移動開發(fā)者選擇使用HTML5來進(jìn)行混合開發(fā),不僅節(jié)約...
    RainyGY閱讀 2,003評論 1 12
  • iOS開發(fā)系列--網(wǎng)絡(luò)開發(fā) 概覽 大部分應(yīng)用程序都或多或少會牽扯到網(wǎng)絡(luò)開發(fā),例如說新浪微博、微信等,這些應(yīng)用本身可...
    lichengjin閱讀 4,037評論 2 7
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,023評論 25 709
  • 一、簡介 近兩年隨著HTML5的迅速發(fā)展與日趨成熟,越來越多的移動開發(fā)者選擇使用HTML5來進(jìn)行混合開發(fā),不...
    寶寶teacher閱讀 2,449評論 3 15

友情鏈接更多精彩內(nèi)容