这是我在课程后编写的一些代码:
$(document).ready(function(){
$.ajax({
type: 'GET',
dataType: 'XML',
url: 'user_timeline.xml',
success: processXML
});
function processXML(response){
var status = $(response).find("status");
for (var i=0; i < status.length; i++){
var text = $("text",status[i]).text();
$('#status').append("<p>" + text + "</p>");
};
}
});
它工作正常,但有人可以解释一下:
$("text",status[i])
是否搜索/选择键'text'的状态数组?
我想知道我在做什么,而不仅仅是这样做......
答案 0 :(得分:1)
该特定行正在text
内寻找status[i]
元素。请参阅关于此的jQuery文档:
选择器上下文
默认情况下,选择器在DOM开始时执行搜索 在文档根目录。但是,可以给出替代上下文 通过使用可选的第二个参数到$()函数进行搜索。 例如,要在事件处理程序中进行搜索,搜索可以是 像这样限制:
$('div.foo')。click(function(){$('span',this).addClass('bar');});
当搜索范围选择器仅限于上下文时 这样,只有点击元素中的跨度才能获得额外的元素 类。
在内部,选择器上下文是使用.find()方法实现的, 所以$('span',this)相当于$(this).find('span')。