7

我做了这个简短的小提琴:http: //jsfiddle.net/NZnN2/。为什么单击按钮时没有弹出警报?

4

2 回答 2

11

因为您的 JavaScript 代码位于onload处理程序中,这意味着display_message它不是全局的,因此 HTML 无法访问。

由于您选择了onLoad,您的 JavaScript 将像这样注入到页面中:

window.addEvent('load', function() {
    function display_message(){
        alert("woohoo!");
    }
});

如您所见,display_message只能在该匿名函数内部访问。要使示例工作,请更改onLoadno wrap (head)no wrap (body)(在页面左侧)。

工作示例:http: //jsfiddle.net/NZnN2/8/

于 2012-05-08T17:41:24.683 回答
3

代替

function display_message() {
    alert('woohoo!');
}

display_message = function () {
    alert('woohoo!');
}
于 2012-05-08T17:48:15.567 回答