我正在尝试从我的模块中注册 +1 点击,该模块被包装为匿名函数。
为此,我创建了一个全局对象 MyModule,并通过它导出了我的点击处理函数。问题是 - 我的点击处理程序没有被调用。
现场演示。代码:
// Initialize +1 button
gapi.plusone.go();
(function(){
window.MyModule = {};
function plusOneClicked() {
alert("+1!");
}
window.MyModule.plusOneClicked = plusOneClicked;
})()
...
<g:plusone callback='window.MyModule.plusOneClicked'></g:plusone>
当我提供一个外部函数作为回调时,其唯一目的是将调用转发到 window.MyModule.plusOneClicked,它可以工作:
function foo() {
window.MyModule.plusOneClicked();
}
...
<g:plusone callback='foo'></g:plusone>
为什么单击处理程序会错过 window.MyModule.plusOneClicked(),但找到 foo()?