1

使用 jQuery 时,如何返回到导航 DOM。例如,如果我找到这样一个项目的父项:

$(this).parent()

你怎么能找到 id 为 'foobar' 的东西。我试过了:

$(this).parent().$('foobar').addClass('hello')

但我得到消息:

未捕获的类型错误:对象 [对象对象] 没有方法“$”
4

2 回答 2

1

ID 必须是唯一的,要通过 ID 选择元素,您可以使用 ID selector $('#foobar'),但是如果您想在父元素中查找元素,可以使用find方法:

$(this).parent().find('#foobar').addClass('hello');

这与以下内容相同:

$('#foobar').addClass('hello');

请注意,如果您对多个元素使用 ID,则您的文档无效,您应该改用类。

$(this).parent().find('.foobar').addClass('hello');
于 2012-12-01T04:36:12.293 回答
0

而 id 应该是唯一的,这样你就可以在document.getElementById("foobar")我之前找到多次出现并使用它:

/* returns an array of all elements with id */
function getElementsById(id){
  var t=document.getElementsByTagName("*"),a=[]
  for(var i=0;i<t.length;i++)
    if(t[i].id==id)a[a.length]=t[i]
  return a
}

注意:如果你正在编写新代码,类有一个内置的 getElementsByClassName(因为它应该有多个)

编辑:这可以减少到document.querySelectorAll("#id")

于 2012-12-01T04:55:52.807 回答