Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/444.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
微信/微信JavaScript桥(微信JSBridge),使用微信JSBridgeReady事件监听器和函数作为参数_Javascript_Api_Events_Wechat_Weixinjsbridge - Fatal编程技术网

微信/微信JavaScript桥(微信JSBridge),使用微信JSBridgeReady事件监听器和函数作为参数

微信/微信JavaScript桥(微信JSBridge),使用微信JSBridgeReady事件监听器和函数作为参数,javascript,api,events,wechat,weixinjsbridge,Javascript,Api,Events,Wechat,Weixinjsbridge,当有人使用微信(微信)共享我的一款游戏(用JavaScript制作)时,我使用微信JSBridge修改共享参数 下面的代码位于一个大JavaScript文件(超过2500行,约100KB)的末尾,在任何函数或对象之外,工作起来就像一个符咒,当WeixinJSBridge准备好时(使用微信/Weixin中的游戏),WECHAT_onBridgeReady函数按预期被调用: 但以下代码没有(从未调用过WECHAT_onBridgeReady): 我想知道为什么作为参数传递函数(不起作用)和传递调用函

当有人使用微信(微信)共享我的一款游戏(用JavaScript制作)时,我使用微信JSBridge修改共享参数

下面的代码位于一个大JavaScript文件(超过2500行,约100KB)的末尾,在任何函数或对象之外,工作起来就像一个符咒,当WeixinJSBridge准备好时(使用微信/Weixin中的游戏),WECHAT_onBridgeReady函数按预期被调用:

但以下代码没有(从未调用过WECHAT_onBridgeReady):

我想知道为什么作为参数传递函数(不起作用)和传递调用函数的封装函数(起作用)之间有区别

在这里你可以看到这个游戏(2006年制作,代码乱七八糟,而且是西班牙语,但我现在正试图修改它以改进它并使其适应现代移动设备):(JavaScript文件在中)

在之前的另一个游戏中,这两种方法都适用于我,但JavaScript文件要小得多(大约8KB),设置事件侦听器的代码放在该文件的开头。这就是为什么我认为这个问题可能与JavaScript引擎需要完全加载和解析文件的时间有关,但我不确定

请问有人知道原因吗

先谢谢你

干杯,
Joan

我认为您应该在脚本
文档之前定义方法
WECHAT\u onBridgeReady
。addEventListener(…)

if (document.addEventListener)
{
    document.addEventListener('WeixinJSBridgeReady', function() { WECHAT_onBridgeReady(); }, false);
}
if (document.addEventListener)
{
    document.addEventListener('WeixinJSBridgeReady', WECHAT_onBridgeReady, false);
}