Javascript:JSFiddle问题 - 简单的onclick事件输出字符串不起作用

时间:2015-06-17 09:20:48

标签: javascript html

我有这个超级简单的onclick事件:

单击按钮以触发一个函数,该函数将在id为“demo”的p元素中输出“Hello World”。

<button onclick="myFunction()">Click me</button>

<p id="demo"></p>

<script>
function myFunction() {
    document.getElementById("demo").innerHTML = "Hello World";
}
</script>

在这里工作正常:http://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_onclick

在我的机器上试用时工作正常。

但它不适用于JSFiddle:

http://jsfiddle.net/6nrh408f/

有谁知道为什么?

2 个答案:

答案 0 :(得分:1)

这是一个范围问题。以这种方式将此函数分配给全局变量:

myFunction = function() {
    document.getElementById("demo").innerHTML = "Hello World";
}

演示:

https://jsfiddle.net/6nrh408f/1/

答案 1 :(得分:0)

因为在小提琴中你定义了onload函数中的函数而不是head。因此myFunction范围不是全局的,在onclick处理程序中使用时不可访问/定义。

只需将左上方的选择框更改为无包装... ,而不是 onLoad

检查fiddle已更新。