WebViewJavascriptBridge实现js与android和ios原生交互

  

1,实现原生与js交互

,,,,& lt; !——,申明交互,这段代码固定必须有,——比;   function  setupWebViewJavascriptBridge(回调),{   ,,,//android使用   ,,,if  (window.WebViewJavascriptBridge), {   ,,,,,,,回调(window.WebViewJavascriptBridge)   ,,,},{else    ,,,,,,,document.addEventListener (   ,,,,,,,,,,,& # 39;WebViewJavascriptBridgeReady& # 39;   ,,,,,,,,,,,,,()函数,{   ,,,,,,,,,,,,,,,回调(window.WebViewJavascriptBridge)   ,,,,,,,,,,,},   ,,,,,,,,,,,假的   ,,,,,,,);   ,,,}   ,,,//ios使用   ,,,if  (window.WebViewJavascriptBridge), {, return 回调(WebViewJavascriptBridge);,}   ,,,if  (window.WVJBCallbacks), {, return  window.WVJBCallbacks.push(回调);,}   ,,,window.WVJBCallbacks =,(回调);   ,,,var  WVJBIframe =, document.createElement (& # 39; iframe # 39;);   ,,,WVJBIframe.style.display =, & # 39;没有# 39;;   ,,,WVJBIframe.src =, & # 39; https://__bridge_loaded__& # 39;;   ,,,document.documentElement.appendChild (WVJBIframe);   ,,,setTimeout(函数(),{,document.documentElement.removeChild (WVJBIframe),},, 0)   }   setupWebViewJavascriptBridge(函数(桥),{//oc或android掉js   ,,,bridge.registerHandler(& # 39;结果# 39;,,功能(数据,responseCallback), {   ,,,,,,,如果(data.errorCode ==, null , | |, data.errorCode ==,,,)   ,,,,,,,,,,,window.location.href =,“refresh.html ?结果=success";   ,,,,,,,   ,,,,,,,,,,,window.location.href =,“refresh.html ?结果=fail";   ,,,});      ,,,//js掉原生   ,,,(文档)。在美元(& # 39;点击# 39;,,& # 39;#叫# 39;,,()函数,{   ,,,,,,,bridge.callHandler(& # 39;叫# 39;,,{& # 39;sessionid # 39;: .cookie美元(“sessionId")},,函数(反应),{   ,,,,,,,,,,,//处理oc过来的回调   ,,,,,,,,,,,var  responseData =, {, & # 39; Javascript 说# 39;:& # 39;Right  back  atcha ! & # 39;,};   ,,,,,,,,,,,responseCallback (responseData)中;   ,,,,,,,});   ,,,});      }); & lt; div>   ,,& lt; a  id =,“call"在跳转手机端,祝辞,& lt;/a>   & lt;/div>

参考:https://www.jianshu.com/p/e37ccf32cb5b

WebViewJavascriptBridge实现js与android和ios原生交互