对不起,如果这是一个愚蠢的问题.
我打电话给按钮点击这样的功能:
<input type="button" onclick="outer();" value="ACTION"> function outer() { alert("hi"); }
它工作正常,我得到一个警报:
现在我这样做:
function outer() { function inner() { alert("hi"); } }
为什么我不会得到警报?
解决方法
您所注意到的范围是正确的.但是,你不是在任何地方调用内部函数.
你可以做:
function outer() { // when you define it this way,the inner function will be accessible only from // inside the outer function function inner() { alert("hi"); } inner(); // call it }
要么
function outer() { this.inner = function() { alert("hi"); } } <input type="button" onclick="(new outer()).inner();" value="ACTION">