【发布时间】:2011-09-12 22:13:54
【问题描述】:
我有类似的东西
function testfunction(runthis)
{
runthis();
}
function main()
{
var z = 15;
testfunction(function(){ alert(z); });
}
但它认为 z 与我的内联函数不在同一范围内。在不向 testfunction 或我的内联函数添加额外参数的情况下,我的内联函数是否可以与 main 属于同一范围?我正在尝试使回调函数起作用。
编辑: 我想上面是一个糟糕的例子,因为它似乎正在工作。但是这里的实例http://pastebin.com/A1pq8dJR 不起作用,除非我添加 .call(this,parameters) 并手动设置范围(尽管我不确定这是在做什么)。我原以为这里使用的 this 指的是 imageLoaded 的范围,但它指的是 imageBoxCreate 的范围?任何人都可以解释为什么没有它就无法工作以及为什么这样做修复它?
【问题讨论】:
-
你能更好地描述你的意图吗?由于关闭,上述工作和警报
15。我不明白您所说的“属于同一范围”是什么意思。 -
你想做什么?您将收到带有发布代码的
15警报... -
除非我将 .call(this,parameters) 放在函数调用之后,否则它对我不起作用。 pastebin.com/A1pq8dJR 这是代码的链接。
标签: javascript callback scope inline anonymous