一个简单的JavaScript onclick事件不起作用,但是我不明白为什么,这是代码:

<button onclick="removeLol()">remove style</button>

function removeLol() {
    alert("hello");
}


这是一个简单的示例:http://jsfiddle.net/YNQg6/1/

最佳答案

这仅仅是因为jsfiddle插入javascript的方式。

Jsfiddle将您的代码包装到一个函数中,该函数可以限制范围并保护全局名称空间:

window.onload=function(){
  function removeLol() {
    alert("hello");
    element.className = element.className.replace(" lol ", "");
  }
}


如果您告诉jsfiddle将代码注入到document body中,它将起作用:

http://jsfiddle.net/YNQg6/13/

或者您可以将您的“本地”功能转换为全局功能:

window.removeLol = removeLol;

09-19 07:53