时间:2021-07-01 10:21:17 帮助过:25人阅读
test
其中有两个地方需要提醒大家一下,以免犯和我同样的错误哦
红线部分的onsubmit =”return false;”主要因为我用了button触发事件,submit默认刷新页面,所以要returnfalse来禁止触发事件后刷新页面。
红线部分,input的value和Onclick()函数的函数名字不能相同,要不然函数不能够被调用。
这两个地方都是自己不注意犯下的错误花了好长的时间又问了好几个人,最后才找到问题的所在。学的教训,大家一定要记得哦!!!
下面大家看下test.js文件的代码:
window.onerror = function(err) { log('window.onerror: ' + err);};function connectWebViewJavascriptBridge(callback) { if (window.WebViewJavascriptBridge) { callback(WebViewJavascriptBridge); } else { document.addEventListener('WebViewJavascriptBridgeReady', function() { callback(WebViewJavascriptBridge); }, false); }}function check(){ connectWebViewJavascriptBridge(function(bridge) { var str = document.getElementById('input1').value;//将第一个输入框的值传递到OC页面中去 bridge.callHandler('submit', str, function(response) { log('JS got response', response); }); });}function change_value(){ connectWebViewJavascriptBridge(function(bridge) { bridge.init(function(message, responseCallback) { log('JS got a message', message); var data = { 'Javascript Responds':'Wee!' }; log('JS responding with', data); responseCallback(data); }); bridge.registerHandler('changeValueHandler', function(data, responseCallback) { document.getElementById('input2').value ='3';//改变html页面上第二个输入框的值 var responseData = { 'Javascript Says':'Right back atcha!' } responseCallback(responseData) }); });}
不多说了demo下载地址
另外今天看到了一片博客对我的思路的启发很大也和大家分享下:
http://honglu.me/2014/09/27/WebViewJavascriptBridge使用/