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输入的内容
# 我们可以
# 小编
# 加载
# 在这个
# 在此
# 这段
# 可以通过
# 给大家
# 表单
# 面上
# 中就
# 所述
# 创建一个
# 自动搜索
# 给我留言
# 最常用
# 感谢大家
# 中与
# 拖放
# 操作界面
相关文章:
c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】
如何通过老薛主机一键快速建站?
如何快速打造个性化非模板自助建站?
实现点击下箭头变上箭头来回切换的两种方法【推荐】
网站制作服务平台,有什么网站可以发布本地服务信息?
如何构建满足综合性能需求的优质建站方案?
如何在西部数码注册域名并快速搭建网站?
寿县云建站:智能SEO优化与多行业模板快速上线指南
南京做网站制作公司,南京哈发网络有限公司,公司怎么样,做网页美工DIV+CSS待遇怎么样?
平台云上自助建站如何快速打造专业网站?
车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?
如何选择域名并搭建高效网站?
,制作一个手机app网站要多少钱?
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
ppt制作免费网站有哪些,ppt模板免费下载网站?
独立制作一个网站多少钱,建立网站需要花多少钱?
武汉网站制作费用多少,在武汉武昌,建面100平方左右的房子,想装暖气片,费用大概是多少啊?
如何设置并定期更换建站之星安全管理员密码?
红河网站制作公司,红河事业单位身份证如何上传?
大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?
制作网站的基本流程,设计网站的软件是什么?
SQL查询语句优化的实用方法总结
如何用IIS7快速搭建并优化网站站点?
头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?
如何在自有机房高效搭建专业网站?
MySQL查询结果复制到新表的方法(更新、插入)
香港服务器网站生成指南:免费资源整合与高速稳定配置方案
网站广告牌制作方法,街上的广告牌,横幅,用PS还是其他软件做的?
黑客如何通过漏洞一步步攻陷网站服务器?
潍坊网站制作公司有哪些,潍坊哪家招聘网站好?
教程网站设计制作软件,怎么创建自己的一个网站?
微信小程序制作网站有哪些,微信小程序需要做网站吗?
婚礼视频制作网站,学习*后期制作的网站有哪些?
建站IDE高效指南:快速搭建+SEO优化+自适应模板全解析
哈尔滨网站建设策划,哈尔滨电工证查询网站?
如何在宝塔面板中创建新站点?
东莞专业制作网站的公司,东莞大学生网的网址是什么?
网站制作的步骤包括,正确网址格式怎么写?
网站插件制作软件免费下载,网页视频怎么下到本地插件?
Android自定义listview布局实现上拉加载下拉刷新功能
宁波免费建站如何选择可靠模板与平台?
如何选择美橙互联多站合一建站方案?
css网站制作参考文献有哪些,易聊怎么注册?
如何快速搭建虚拟主机网站?新手必看指南
济南企业网站制作公司,济南社保单位网上缴费步骤?
矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?
如何在建站之星绑定自定义域名?
教学论文网站制作软件有哪些,写论文用什么软件
?
网页制作模板网站推荐,网页设计海报之类的素材哪里好?
公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。