为什么必须在JSFiddle的HTML面板中定义Vanilla JavaScript函数?

时间:2013-12-01 20:19:29

标签: jsfiddle

我注意到如果我在JS面板中定义JavaScript函数并将该函数包含在HTML标记中的onclick属性中,则无法识别该函数。但是,如果我使用HTML面板中的打开和关闭脚本标签来定义相同的功能,如下所示:

<script>
    function myfunction(){
        alert("chow");    
    }
</script>

<button id = "mybutton" onclick = "myfunction()">Click me</button>

识别该功能。

Example其中函数在HTML面板中定义

Example其中函数在JavaScript面板中定义

1 个答案:

答案 0 :(得分:2)

你只需要配置jsFiddle,不要将JS代码包装在loadready事件处理程序中(默认情况下会这样做):

enter image description here

否则该函数将 local 到那些事件处理程序,而不是全局。要使事件处理程序定义HTML工作,您必须在全局范围内定义函数。

可以找到更多信息in the documentation