我只是尝试这段代码:
$("#test").ready(function() {
$(this).click(function() {
alert('clicked!');
});
});
在这里小提琴:http://jsfiddle.net/8bfqw/
为什么当我点击div之外时它仍然是警报?
答案 0 :(得分:6)
这是因为您的选择器$(#test)
实际上是$(document)
,因为来自docs:
.ready()方法只能在匹配的jQuery对象上调用 当前文件
无论你在选择器内传递什么,它都会被省略并处理当前文档。 $(document).ready(function(){})
的简写版本为$(function(){});
,因此您需要:
$(function() {
$('#test').click(function() {
alert('clicked!');
});
});
答案 1 :(得分:2)
$("#test").ready(function() {
$("#test").click(function() {
alert('clicked!');
});
});
答案 2 :(得分:0)
$("#test").ready(function() {
$("#test").click(function() {
alert('clicked!');
});
});
您必须将click-function设置为Test-object,而不是整个文档$(this)。