看起来在使用选择器时JQuery
会在当前搜索。document
如何仅在元素内部搜索div
元素?
jQuery 选择器的工作方式与您可能更熟悉的 CSS 选择器非常相似。
首先,选择 div,然后从该 div 下降:
$('#my-div').find('some-selector').
或构建您的选择器以匹配相关元素的子元素:
$('#my-div some-selector')
老问题,但似乎每个人都错过了作用域jQuery 选择器(使用你想要的作用域,即你的 div 选择器,作为第二个参数)
例如使用
var $matches = $('.adiv', '#mydiv');
这是一个较短的等价物:
var $matches = $('#mydiv').find('.adiv');
var elems = jQuery(".foo", jQuery("#divYourWantToLimitTo") ); //BAD
//or
var elems = jQuery("#divYourWantToLimitTo .foo"); //Better
//or
var elems = jQuery("#divYourWantToLimitTo").find(".foo"); //BEST
jQuery 提供了几种搜索特定元素的方法:
$("#your_div").find(".your_things"); //Find everything inside
//-or-
$("#your_div").filter(".your_things"); //Find only the top level
//-or-
$("#your_div .your_things"); //Easiest
var elements = $('div ' + yourSearch);
$('div-selector').find('the selector-you-are-looking-for');