【发布时间】:2014-11-04 09:48:14
【问题描述】:
由于某种原因,这个简单的代码块不会在我的浏览器中执行。没有任何 JQuery 函数执行,即使有一个准备好的处理程序。
<!DOCTYPE html PUBLIC>
<html>
<head>
<title></title>
</head>
<body>
<button id="btn">click me</button>
<script type="text/javascript">
$(document).ready(function(){
$('#btn').css("font-size", "1.5em");
$('#btn').click(function(){
$('#btn').hide();
});
});
</script>
<script src=
"//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js" type=
"text/javascript">
</script>
</body>
</html>
【问题讨论】:
-
在调用 jquery 函数之前应该先包含 jQuery。
-
将 JQuery 导入移动到头部就可以了。那么就绪处理程序有什么用呢?
-
不,与任何其他 jquery 代码一样的就绪处理程序必须放在 jquery 的包含之后。您应该首先包含 jquery,或者您可以将
$(document).ready(function){..更改为window.onload = function() {..详细说明,例如这里:stackoverflow.com/questions/19326317/… -
我以为ready handler函数会先等待整个文档加载完毕(包括导入jquery),然后再执行函数。
-
很高兴你刚刚学到了一些有价值的东西:) 简而言之 - 在加载 jquery 之前准备好的处理程序无法工作,因为准备好的处理程序是在 jquery 中定义的。