Sid*_*rth 5 javascript easyxdm
我试图在单个父页面上使用两个easyXDM套接字但没有成功.两个套接字都连接到相同的远程域但不同的端点.父页面有两个div false_app_div和dummy_app_div.以下显示代码片段 -
在父页面上,我有两个JS函数activate_false_app()和activate_dummy_app().
window.loadScript = function(src, onload, onerror) {
var head = document.getElementByTagName('head')[0];
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = src;
if (script.readyState) {
script.onreadystate = function() {
var state = this.state;
if (state === 'loaded' || state === 'complete') {
script.onreadystate = null;
onload();
}
};
}
};
window.activate_false_app = function() {
var exdm_url = 'http://localhost:8000/js/easyXDM/easyXDM.min.js';
on_load_fn = function() {
window.init_false_app_communication();
};
on_error_fn = function() {
return false;
};
window.loadScript(exdm_url, on_load_fn, on_error_fn);
};
window.init_false_app_communication = function() {
var false_app_socket = new easyXDM.Socket({
remote : 'http://localhost:8000/false_app',
swf : 'http://localhost:8000/js/easyXDM/easyXDM.swf',
container : 'false_ap_div',
onMessage : function(message, origin) {
alert('false_app onMessage');
alert(message);
}
});
};
window.activate_dummy_app = function() {
var exdm_url = 'http://localhost:8000/js/easyXDM/easyXDM.min.js';
on_load_fn = function() {
window.init_dummy_app_communication();
};
on_error_fn = function() {
return false;
};
window.loadScript(exdm_url, on_load_fn, on_error_fn);
};
window.init_dummy_app_communication = function() {
var dummy_app_socket = new easyXDM.Socket({
remote : 'http://localhost:8000/dummy_app',
swf : 'http://localhost:8000/js/easyXDM/easyXDM.swf',
container : 'dummy_app_div',
onMessage : function(message, origin) {
alert('dummy_app onMessage');
alert(message);
};
});
};
Run Code Online (Sandbox Code Playgroud)
如果在父页面中,我调用activate_dummy_app()或者activate_false_app(),它可以工作 - 这两种工作完全没有关系.但是,如果我同时调用它们,那么只有其中一个工作,我在JS控制台上得到一个错误,那是一些未定义的东西(我找不到).
另外,我知道这个问题有事情做与装载因为有两个easyXDMs如果我把init_dummy_app_communication在on_load_fn的activate_false_app()(除了init_false_app_communication已经存在),那么这两个作品.
但是,我不能肯定easyXDM已经加载,所以两者activate_false_app并activate_dummy_app具有加载easyXDM,让他们在隔离工作,以及在一起.我尝试使用noConflict函数,但那里的文档很差,结果没有什么具体的.
有人遇到类似的问题或知道我在这里缺少什么?
Teo*_*ahi -2
在此页面中; https://groups.google.com/forum/#!topic/easyxdm/bOoznzUrkjE
它被提到为;
(function(){
var easyXDM;
// paste easyXDM's minified code here
var rpc = easyXDM.Rpc(.....
...
})();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1085 次 |
| 最近记录: |