18 Star 52 Fork 14

HENG CHENGFEI / SwiftJS

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

SwiftJS是用swift写的,用于演示如何和JavaScript进行交互的Demo.

效果

Features

  • JavaScript call Native App
  • Native App call JavaScript

Requirements

  • iOS 8.0+ / Mac OS X 10.9+ / tvOS 9.0+ / watchOS 2.0+
  • Xcode 7.2+

Communication

Usage

Native App 调用 H5中的JavaScript

let conf = WKWebViewConfiguration()
let userScript = WKUserScript(source: "redHeader()", injectionTime: .AtDocumentEnd, forMainFrameOnly: true)
conf.userContentController.addUserScript(userScript)
webView = WKWebView(frame: self.view.frame, configuration: conf)

JavaScript 调用 Native App

1.首先添加一个WKScriptMessageHandler代理

class ViewController: UIViewController, WKScriptMessageHandler

2.实现«userContentController»的代理方法

func userContentController(userContentController: WKUserContentController!, didReceiveScriptMessage message: WKScriptMessage!) {
    if(message.name == "callbackHandler") {
        println("JavaScript is sending a message \(message.body)")
    }
}

3.WebView启动对JavaScript的监听事件

contentController.addScriptMessageHandler(
    self,
    name: "callbackHandler" 
)

4.H5中,添加如下JavaScript

webkit.messageHandlers.callbackHandler.postMessage("I Love you");

空文件

简介

Swift和JavaScript交互 展开 收起
Swift
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Swift
1
https://gitee.com/chengfeisoft/SwiftJS.git
git@gitee.com:chengfeisoft/SwiftJS.git
chengfeisoft
SwiftJS
SwiftJS
master

搜索帮助