UIWebView是iOS最常用的SDK之一,它有一个stringByEvaluatingJavaScriptFromString方法可以将javascript嵌入页面中,通过这个方法我们可以在iOS中与UIWebView中的网页元素交互。

stringByEvaluatingJavaScriptFromString
使用stringByEvaluatingJavaScriptFromString方法,需要等UIWebView中的页面加载完成之后去调用。我们在界 面上拖放一个UIWebView控件。在Load中将google mobile加载到这个控件中,代码如下:
- (void)viewDidLoad
{
[super viewDidLoad];
webview.backgroundColor = [UIColor clearColor];
webview.scalesPageToFit =YES;
webview.delegate =self;
NSURL *url =[[NSURL alloc] initWithString:@"http://www.google.com.hk/m?gl=CN&hl=zh_CN&source=ihp"];
NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url];
[webview loadRequest:request];
}
我们在webViewDidFinishLoad方法中就可以通过javascript操作界面元素了。
1、获取当前页面的url。
- (void)webViewDidFinishLoad:(UIWebView *)webView {
NSString *currentURL = [webView stringByEvaluatingJavaScriptFromString:@"document.location.href"];
2、获取页面title:
NSString *title = [webview stringByEvaluatingJavaScriptFromString:@"document.title"];
3、修改界面元素的值。
NSString *js_result = [webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByName('q')[0].value='朱祁林';"];
4、表单提交:
NSString *js_result2 = [webView stringByEvaluatingJavaScriptFromString:@"document.forms[0].submit(); "];
5、获取所有的html
NSString *allHtml = @"document.documentElement.innerHTML"; NSString *allHtmlInfo = [webView stringByEvaluatingJavaScriptFromString:allHtml];
6、获取网页的一个值
NSString *htmlNum = @"document.getElementById('title').innerText";
NSString *numHtmlInfo = [webView stringByEvaluatingJavaScriptFromString:htmlNum];
7、插入js代码
上面的功能我们可以封装到一个js函数中,将这个函数插入到页面上执行,代码如下:
if ([title compare: @"Google"]==NSOrderedSame ) {
[webView stringByEvaluatingJavaScriptFromString:@"var script = document.createElement_x('script');"
"script.type = 'text/javascript';"
"script.text = "function myFunction() { "
"var field = document.getElementsByName('q')[0];"
"field.value='朱祁林';"
"document.forms[0].submit();"
"}";"
"document.getElementsByTagName_r('head')[0].appendChild(script);"];
[webView stringByEvaluatingJavaScriptFromString:@"myFunction();"];
}
看上面的代码:
a、首先通过js创建一个script的标签,type为'text/javascript'。
b、然后在这个标签中插入一段字符串,这段字符串就是一个函数:myFunction,这个函数实现google自动搜索关键字的功能。
c、然后使用stringByEvaluatingJavaScriptFromString执行myFunction函数。
以上所述是小编给大家介绍的ios 获取或修改网页上的内容,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# ios
# 获取网页内容
# ios修改网页内容
# iOS Webview自适应实际内容高度的4种方法详解
# 详解iOS App中UITableView的创建与内容刷新
# iOS中使用正则表达式NSRegularExpression 来验证textfiled输入的内容
# 我们可以
# 小编
# 加载
# 在这个
# 在此
# 这段
# 可以通过
# 给大家
# 表单
# 面上
# 中就
# 所述
# 创建一个
# 自动搜索
# 给我留言
# 最常用
# 感谢大家
# 中与
# 拖放
# 操作界面
相关文章:
如何安全更换建站之星模板并保留数据?
Python多线程使用规范_线程安全解析【教程】
智能起名网站制作软件有哪些,制作logo的软件?
详解jQuery中基本的动画方法
香港服务器网站推广:SEO优化与外贸独立站搭建策略
网站制作外包价格怎么算,招聘网站上写的“外包”是什么意思?
如何在Mac上搭建Golang开发环境_使用Homebrew安装和管理Go版本
,有什么在线背英语单词效率比较高的网站?
寿县云建站:智能SEO优化与多行业模板快速上线指南
如何在万网主机上快速搭建网站?
建站之星微信建站一键生成小程序+多端营销系统
如何基于云服务器快速搭建个人网站?
网站制作软件有哪些,制图软件有哪些?
如何在建站主机中优化服务器配置?
如何配置支付宝与微信支付功能?
定制建站平台哪家好?企业官网搭建与快速建站方案推荐
电影网站制作价格表,那些提供免费电影的网站,他们是怎么盈利的?
XML的“混合内容”是什么 怎么用DTD或XSD定义
官网网站制作腾讯审核要多久,联想路由器newifi官网
香港服务器网站生成指南:免费资源整合与高速稳定配置方案
C#如何序列化对象为XML XmlSerializer用法
打鱼网站制作软件,波克捕鱼官方号怎么注册?
如何选择靠谱的建站公司加盟品牌?
Thinkphp 中 distinct 的用法解析
深圳防火门网站制作公司,深圳中天明防火门怎么编码?
如何快速搭建响应式可视化网站?
网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?
如何制作网站标识牌,动态网站如何制作(教程)?
深圳网站制作的公司有哪些,dido官方网站?
深圳 网站制作,深圳招聘网站哪个比较好一点啊?
微信推文制作网站有哪些,怎么做微信推文,急?
网站视频怎么制作,哪个网站可以免费收看好莱坞经典大片?
定制建站策划方案_专业建站与网站建设方案一站式指南
标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?
赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?
建站上传速度慢?如何优化加速网站加载效率?
如何用PHP快速搭建CMS系统?
b2c电商网站制作流程,b2c水平综合的电商平台?
javascript中的try catch异常捕获机制用法分析
如何用IIS7快速搭建并优化网站站点?
魔方云NAT建站如何实现端口转发?
黑客入侵网站服务器的常见手法有哪些?
如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?
网站制作公司排行榜,四大门户网站排名?
宝塔建站教程:一键部署配置流程与SEO优化实战指南
建站之星如何快速生成多端适配网站?
如何获取PHP WAP自助建站系统源码?
大同网页,大同瑞慈医院官网?
网站制作公司广州有几家,广州尚艺美发学校网站是多少?
制作网站的过程怎么写,用凡科建站如何制作自己的网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。