標籤:
近期項目開發中用到了這方面的技術了,那我們一起來看看。
- 1.利用webView控制項載入本地html5或者網路上html5
- 2.設定控制器為webView的代理,遵守協議
- 3.實現代理方法
webViewDidFinishLoad:
- 4.在代理方法中進行操作HTML5中的標籤(CRUD-->增刪改查)
- 1.用類別選取器或者id選取器或者標籤選取器等選擇要進行操作的標籤
- 2.把選擇好的標籤轉換成字串
- 3.webView調用
stringByEvaluatingJavaScriptFromString方法
- 應用情境:比如載入了網路上的百度連結,但是不想要它某個連結標籤,利用這個代理方法,擷取這個標籤,然後刪除它,或者更改他標籤的顯示文字等內容
1.載入本地HTML5
NSURL *url = [[NSBundle mainBundle] URLForResource:@"test" withExtension:@"html"];NSURLRequest *request = [NSURLRequest requestWithURL:url];[self.webView loadRequest:request];
2.載入網路上網頁HTML5
NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"];NSURLRequest *request = [NSURLRequest requestWithURL:url];[self.webView loadRequest:request];
3.在oc中刪除HTML5中的某個標籤,比如按鈕
// 網頁視圖載入完畢會調用代理的這個方法- (void)webViewDidFinishLoad:(UIWebView *)webView{ NSString *str = @"document.getElementsByClassName(‘detail_btns2‘)[0].remove();"; [webView stringByEvaluatingJavaScriptFromString:str];}4.在oc中更改HTML5內容
- (void)webViewDidFinishLoad:(UIWebView *)webView{ NSString *headerStr = @"document.getElementsByTagName(‘h1‘)[0].innerText = ‘測試文字‘;"; [webView stringByEvaluatingJavaScriptFromString:headerStr]; NSString *downLoadStr = @"document.getElementById(‘xiazaiapp‘).getElementsByTagName(‘a‘)[0].innerText = ‘下個雞蛋‘;"; [webView stringByEvaluatingJavaScriptFromString:downLoadStr];}
https://github.com/CoderJackyHuang/TextVeiw-Label-HTML-DEMO UITextView和UILabel如何載入HTML內容
https://github.com/CoderJackyHuang/WebViewImgAutoFit WebView載入HTML中的圖片時,處理圖片超過螢幕的問題,讓圖片自適應螢幕
https://github.com/CoderJackyHuang/WebViewJavascriptBridgeDemo
另外附贈一個連結,直接帶有的。http://www.jianshu.com/p/8ee9e168d680
【iOS和HTML 5互動】iOS中載入html5調用html方法和修改html5內容