- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当有人使用微信(微信)分享我的一款游戏(用 JavaScript 制作)时,我正在使用 WeixinJSBridge 修改分享参数。
下面的代码位于一个很大的 JavaScript 文件(超过 2500 行,大约 100 KB)的末尾,并且位于任何函数或对象之外,它的作用就像一个魅力,当 WeixinJSBridge 启动时,函数 WECHAT_onBridgeReady 会按预期被调用。准备就绪(使用微信/微信中的游戏):
if (document.addEventListener)
{
document.addEventListener('WeixinJSBridgeReady', function() { WECHAT_onBridgeReady(); }, false);
}
但以下代码不会(WECHAT_onBridgeReady 从未被调用):
if (document.addEventListener)
{
document.addEventListener('WeixinJSBridgeReady', WECHAT_onBridgeReady, false);
}
我想知道为什么将函数作为参数传递(不起作用)和传递调用该函数的封装函数(起作用)之间存在差异。
在这里你可以看到这个游戏(2006年制作的,代码很乱,而且是西类牙语,但我现在正在尝试修改它以改进它并使其适应现代移动设备):http://yasminoku.tuxfamily.org/new/online/ (JavaScript 文件位于 http://yasminoku.tuxfamily.org/new/online/yasminoku.js )
这两种方法在我之前的另一个游戏中都有效,但是 JavaScript 文件要小得多(大约 8KB),并且设置事件监听器的代码被放置在该文件的开头。这就是为什么我认为这个问题可能与文件需要完全加载并由 JavaScript 引擎解析的时间有关,但我不确定。
请问有谁知道原因吗?
提前谢谢您。
干杯, 琼
最佳答案
我认为你应该在脚本document.addEventListener(...)
之前定义方法WECHAT_onBridgeReady
。
关于javascript - 微信/微信 JavaScript Bridge (WeixinJSBridge) 使用 WeixinJSBridgeReady 事件监听器和函数作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26944862/
当有人使用微信(微信)分享我的一款游戏(用 JavaScript 制作)时,我正在使用 WeixinJSBridge 修改分享参数。 下面的代码位于一个很大的 JavaScript 文件(超过 250
我是一名优秀的程序员,十分优秀!