为什么这个超级简单的jquery不起作用?
问题描述:
我很难得到这个片段的工作。我做了一个小例子。您可以在线查看:http://jsfiddle.net/qnnZe/它的工作地点是!为什么这个超级简单的jquery不起作用?
的test.html
<!DOCTYPE html>
<head>
<title>test</title>
<meta charset="utf-8">
<script src="jquery.min.js"></script>
<script src="test.js"></script>
</head>
<body>
<p>I am going to test right now.</p>
</body>
</html>
test.js
$("p").click(function() {
$(this).hide("slow");
});
然而,我的服务器上它不工作。这里是我的服务器的链接:http://techinf.de/sleepytime/test.html
一如既往,任何帮助表示赞赏。
答
因为在的jsfiddle DOM加载后脚本代码被执行(这是默认选项,看到下拉菜单设置为“onDomReady”),您的网页上它之前执行。
$(function()
{
$("p").click(function() {
$(this).hide("slow");
});
});
答
你需要用你的点击处理程序中的文件准备好功能:如果你在一个ready()
处理包装你的代码会工作。
尝试之一:
$(document).ready(function() {
$("p").click(function() {
$(this).hide("slow");
});
});
或
$(function() {
$("p").click(function() {
$(this).hide("slow");
});
});
答
前的DOM就绪时,它会执行。点击处理程序应该添加到任何普通的jQuery“ready”方法中,例如:
$(function() {
$("p").click(function() {
$(this).hide("slow");
});
});
为什么它在没有.ready的情况下工作? – 2012-02-25 13:26:53
@pewpew你看过[jQuery文档](http://api.jquery.com/jQuery/#jQuery3)吗? – 2012-02-25 16:05:26