WKWebView交互之js调用oc

首先加载一个网页:

加载一个网页

第一种情况:js调用oc

首先讲一下原理:

WKUserContentController:

A WKUserContentController object provides a way for JavaScript to post messages and inject user scripts to a web view.

WKUserContentController提供了一种方式让js可以发送消息和注入脚本到web view。

简单来说就是js通过它来给对象发送消息。前提是你得提前配置。 WKUserContentController是js和webview沟通的桥梁。每一个webview的配置对象都有一个WKUserContentController。

oc端实例代码:

1.注册消息

注册消息

2.收到消息的代码

oc代码

js端代码:

js代码



需要注意的问题:这里存在循环引用的问题:

self间接引用userContentController,userContentController又引用了self。因此存在循环引用的问题。我们需要做的是下边的操作:

打破循环
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 关于UIWebView的介绍,相信看过上文的小伙伴们,已经大概清楚了吧,如果有问题,欢迎提问。 本文是本系列...
    CoderLF阅读 12,950评论 2 12
  • 随着H5技术的兴起,在iOS开发过程中,难免会遇到原生应用需要和H5页面交互的问题。其中会涉及方法调用及参数传值等...
    Chris_js阅读 8,280评论 1 8
  • 前言 Web 页面中的 JS 与 iOS Native 如何交互是每个 iOS 猿必须掌握的技能。而说到 Nati...
    幽城88阅读 6,616评论 1 8
  • 一、WKWebView Framework WKWebView的14个类与3个协议: WKBackForwardL...
    Jasmine_酱阅读 4,744评论 3 0
  • 2016-10-26o翻滚的牛宝宝oCocoaChina ▲点击上方“CocoaChina”关注即可免费学习iOS...
    啷里个啷里个啷个里个啷阅读 5,077评论 0 1