我找不到这个JSFiddle有什么问题。
HTML:
<input type="button" value="test" onclick="test()">
JavaScript:
function test(){alert("test");}
当我单击按钮时-什么也没发生。控制台显示“测试未定义”
我已经阅读了JSFiddle文档- 那里说JS代码已添加到<head>并且HTML代码已添加到<body>(因此,此JS代码早于html,应该可以使用)。
<head>
<body>
该函数是在装入处理程序中定义的,因此属于不同的范围。正如@ellisbben在注释中指出的那样,您可以通过在window对象上显式定义它来解决此问题。更好的是,更改它以将处理程序毫不干扰地应用于对象:http://jsfiddle.net/pUeue/
window
$('input[type=button]').click( function() { alert("test"); });
请注意,以这种方式而不是内联方式应用处理程序,可以使HTML保持整洁。我使用的是jQuery,但您可以选择是否使用框架,也可以使用其他框架。