jQuery选择器从HTML对象而不是从文档根中进行选择?

jQuery选择器从HTML对象而不是从文档根中进行选择?,jquery,jquery-selectors,Jquery,Jquery Selectors,jQuery选择器从文档中进行选择。 如何从根以外的其他位置进行选择? 假设我想从HTML对象中选择一些子对象 为此 function dothis(obj) { $j("#tabs").removeClass(); $j("#tabs>ul").removeClass(); $j("#tabs>ul>li>a").each(function() { var tabNum = $j(this).attr("href

jQuery选择器从文档中进行选择。 如何从根以外的其他位置进行选择? 假设我想从HTML对象中选择一些子对象

为此

function dothis(obj)
{
     $j("#tabs").removeClass();
     $j("#tabs>ul").removeClass();
     $j("#tabs>ul>li>a").each(function()
     {
         var tabNum = $j(this).attr("href").replace("#", "");
         var tabContent = $j("div[id=" + tabNum + "]");
         tabContent.removeClass();
         $(tabContent).before("<br><h1>" +$j(this).text() + "</h1>\n" );
     });
     $j("#tabs>ul").each(function()
     {
         $j(this).empty();//remove Ul links on top

     });
}

您可以为选择器提供第二个参数以精确显示上下文:

$j("#tabs", obj).removeClass();

您可以为选择器提供第二个参数以精确显示上下文:

$j("#tabs", obj).removeClass();
如果obj是HTML元素,则可以使用上下文参数

jQuery选择器[上下文] 选择器包含选择器表达式的字符串 上下文用作上下文的DOM元素、文档或jQuery

即$jtabs,obj.removeClass

您还可以在jQuery对象上使用该方法查找匹配元素的子元素,并且在内部$selector,context只调用$context.findselector

例如:

function dothis(obj) {
  var $obj = $j(obj);
  $obj.find('#tabs').removeClass();
  // ....
}
虽然,例如,tabs将使用ID tabs搜索元素,但文档中只能有一个元素具有任何给定ID,如果要使此函数在两个不同的上下文中工作,则可能需要切换到使用类。

如果obj是HTML元素,则可以使用上下文参数

jQuery选择器[上下文] 选择器包含选择器表达式的字符串 上下文用作上下文的DOM元素、文档或jQuery

即$jtabs,obj.removeClass

您还可以在jQuery对象上使用该方法查找匹配元素的子元素,并且在内部$selector,context只调用$context.findselector

例如:

function dothis(obj) {
  var $obj = $j(obj);
  $obj.find('#tabs').removeClass();
  // ....
}
尽管例如,选项卡将使用ID选项卡搜索元素,但文档中只能有一个元素具有任何给定ID,如果要使此函数在两种不同的上下文中工作,您可能需要切换到使用类。

您可以使用:

$j(obj).find('#tabs')
指定要在哪个元素上下文中查找某些内容。有些人喜欢这种语法:

$j('#tabs', obj)
我不推荐。它会在内部将其转换为与我上面提到的完全相同的格式。查找,其次,由于切换顺序,它更难阅读。

您可以使用:

$j(obj).find('#tabs')
指定要在哪个元素上下文中查找某些内容。有些人喜欢这种语法:

$j('#tabs', obj)
我不推荐。它会在内部将其转换为与我上面提到的完全相同的格式。查找,其次,由于切换顺序,它更难读取