的test.html:
<html>
<head>
<script type="text/javascript" src="jquery-1.4.2.js"></script>
<script type="text/javascript" src="test.js"></script>
</head>
<body>
<input id="but2" type="button" value="2"/>
</body>
</html>
jquery-1.4.2.js是从http://jquery.com/
下载的test.js:
var fn=function(){
alert('success!');
};
$('#but2').click(fn);
点击按钮时,没有任何反应。我调试了很长时间但没找到根本原因。请帮忙。
答案 0 :(得分:4)
包装它,使得代码在文档加载之前不会运行。
试一试: http://jsfiddle.net/ApDKU/
$(function() {
var fn=function(){
alert('success!');
};
$('#but2').click(fn);
});
这样做的:
$(function() {...});
...与
相同$(document).ready(function() {...});
...导致内部代码仅在<body>
标记完成加载后运行。
您拥有它的方式,将click
处理程序附加到#but2
的代码在 #but2
加载到页面之前运行。