iOS native如何获取web界面的title、image等

2017-12-10  本文已影响21人  WuNai

最近几年都很流行hybrid开发模式,这样就少不了native和Html界面的一些交互,或者方法的调用。
微信的分享火热我想也说大部门app模仿的一个典范。今天我们就说微信分享的一个细节。
我们浏览朋友的朋友圈后,如果想分享到自己朋友圈,那我们就需要知道webview 的title 和 image,问题来了,我们怎么知道呢?


20140624192900078.png

分享界面


20140624192929078.png
以前我没有接触过的时候感觉好神奇啊,微信好强大啊,这个也可以,但是最近无意才发现很简单,就是一句话二句话的问问题。
具体废话不多说了。直接先看代码吧。
self.title = [_webView stringByEvaluatingJavaScriptFromString:@"document.title"];  
       NSLog(@"title===%@",self.title);  
   NSString *articleImageUrl = [_webView stringByEvaluatingJavaScriptFromString:@"document.images[0].src"];  
       NSLog(@"imageurl===%@",articleImageUrl);  

在控制台再看看我们的输出结果:

2014-06-24 19:31:19.182 DemoApp[734:60b] title===百度一下  
2014-06-24 19:31:19.183 DemoApp[734:60b] imageurl===http://m.baidu.com/static/index/logo_index2.png

哈哈,大功告成。就这么简单。
下面是一些类似的功能:
1、获取web界面所有的html:

NSString *lJs = [webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.innerHTML"];

2、去除某个属性:

[webView stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat:@"document.images[%d].removeAttribute("width")", i]];  

3、获取当前页面的url:

NSString *currentURL = [webView stringByEvaluatingJavaScriptFromString:@"document.location.href"];   

非常感谢 “jinglijun”的分享 原文:http://blog.csdn.net/justinjing0612/article/details/34127597

上一篇下一篇

猜你喜欢

热点阅读