| 查看: 1149 | 回复: 0 | ||
[求助]
有人能看懂这个吗
|
|
// // CXJSBridge.js // CXJSBridge // // Created by Chao Xing on 12-3-1. // Copyright (c) 2012年 Chao Xing Technology Co., Ltd. All rights reserved. // (function(context){ function bridgeCall(src,callback) { iframe = document.createElement("iframe" ;iframe.style.display = "none"; iframe.src = src; var cleanFn = function(state){ console.log(state) try { iframe.parentNode.removeChild(iframe); } catch (error) {} if(callback) callback(); }; iframe.onload = cleanFn; document.documentElement.appendChild(iframe); } function JSBridge() { this.device="ios"; this.callbackDict = {}; this.notificationIdCount = 0; this.notificationDict = {}; var that = this; context.document.addEventListener('DOMContentLoaded',function(){ bridgeCall('jsbridge://NotificationReady',that.trigger('jsBridgeReady',{})); },false); } JSBridge.prototype = { constructor: JSBridge, //send notification to WebView postNotification: function(name, userInfo){ if(this.device == 'android'){ androidjsbridge.postNotification(name, JSON.stringify(userInfo)); } else { this.notificationIdCount++; this.notificationDict[this.notificationIdCount] = {name:name, userInfo:userInfo}; bridgeCall('jsbridge://PostNotificationWithId-' + this.notificationIdCount); } }, //pop the notification in the cache popNotificationObject: function(notificationId){ var result = JSON.stringify(this.notificationDict[notificationId]); delete this.notificationDict[notificationId]; return result; }, //trigger the js event trigger: function(name, userInfo) { if(this.callbackDict[name]){ var callList = this.callbackDict[name]; for(var i=0,len=callList.length;i<len;i++){ callList(userInfo); } } }, setDevice:function(device){ this.device = device; try{context._jsBridgeReady();}catch(e){} }, //bind js event bind: function(name, callback){ if(!this.callbackDict[name]){ //create the array this.callbackDict[name] = []; } this.callbackDict[name].push(callback); }, //unbind js event unbind: function(name, callback){ if(arguments.length == 1){ delete this.callbackDict[name]; } else if(arguments.length > 1) { if(this.callbackDict[name]){ var callList = this.callbackDict[name]; for(var i=0,len=callList.length;i<len;i++){ if(callList == callback){ callList.splice(i,1); break; } } } if(this.callbackDict[name].length == 0){ delete this.callbackDict[name]; } } } }; context.jsBridge = new JSBridge(); })(window); 发自小木虫Android客户端 |
» 猜你喜欢
2026年国自然面上资助率
已经有21人回复
基础研究怎么拉横向,学校到款任务越来越多,难以完成 拉横向,都有哪些途径啊
已经有10人回复
2027年申博
已经有3人回复
一个有机合成实验室都需要哪些设备?
已经有7人回复
面上再次挂了,太难了,躺也躺不了,倦也卷不过,小学校之殇!
已经有22人回复
微信指数没变化,科研之友没阅读
已经有18人回复
HXDI做水性聚氨酯乳液,是不是特别容易出渣
已经有3人回复
系统今天又提示维护了,估计离放榜不远了
已经有15人回复
你们的时间戳变了吗
已经有4人回复
产物和副产物价值比较
已经有5人回复










;
回复此楼