OC中加载html5调用html方法和修改HTML5内容
2024-10-19 12:43:06
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];
}
最新文章
- [LeetCode] Max Sum of Rectangle No Larger Than K 最大矩阵和不超过K
- 批量设置select为默认项
- Spring TestContext测试框架搭建
- easyUI之datebox
- 日志分析(四) Elasticsearch的精确查询
- WPF学习之路初识
- 利用Service Fabric承载eShop On Containers
- C语言拼接字符串以及进制转换
- Python Django的分页,Form验证,中间件
- Servlet - Upload、Download、Async、动态注册
- 【原创】大数据基础之Spark(3)Spark Thrift实现原理及代码实现
- json对象组按某个字段排序
- ambari 安装HDP3.0.1后,启动服务的问题记录
- 个人技术博客Alpha----Android Studio UI学习
- call继承父级属性,prototype继承父级方法
- spring boot 当参数传入开头多个0时,报错:JSON parse error: Invalid numeric value: Leading zeroes not allowed
- C#学习笔记(30)——系统自带委托Func和Action
- JVM调优一些相关内容
- python opencv3 检测人
- [模式识别].(希腊)西奥多里蒂斯&;lt;第四版&;gt;笔记5之__特征选取
热门文章
- .NET 程序集单元测试工具 SmokeTest 应用指南
- .Net中的RealProxy实现AOP
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(4)-创建项目解决方案
- 让我们山寨一张Windows Azure Global的壁纸
- JVM学习(4)——全面总结Java的GC算法和回收机制
- 从接口、抽象类到工厂模式再到JVM来总结一些问题
- Solr Facet 默认值
- Apworks框架实战(四):使用Visual Studio开发面向经典分层架构的应用程序:从EasyMemo案例开始
- 联想 Thinkpad X230 SLIC 2.1 Marker
- JSP 9大内置对象详解