我的javascript看起来像这样:
$(document).ready(function() {
$("a:not(.noajax)", $('#header, #content')).live('click', function(event) {
ajaxCall($(this).attr("href"));
event.preventDefault();
});
)};
$(this)选择器似乎没有得到'a'对象,但是没有选择器上下文它工作正常。我在这里做错了什么?
看起来jQuery将带有上下文的选择器转换为:
$(context).find(selector)
所以我认为我的$(this)指的是上下文而不是selctor。有什么想法吗?
答案 0 :(得分:1)
上下文应该是元素或字符串,而不是jQuery对象。此外,由于ID是唯一的,因此您只需要一个上下文。
$("a:not(.noajax)", '#header').live('click', function(event) {
ajaxCall($(this).attr("href"));
event.preventDefault();
});
<强> See a live example. 强>