0

我有以下html:

<div id="test">
  <div>
    <div>
      <div>
         <div>
           <img /><img /><img /> <!--target these images only-->
         </div>
         <div>
           <img /><img /><img />
         </div>
     </div>
   </div>
  </div>
</dvi>

我如何定位这些图像#test

.find('#test div:first-child img')/* 可能是这样,但似乎是错误的陈述*/


如何使用 like ?

$('#test img').parent('div').parent('div').children('div:first img');

4

3 回答 3

0

它在很大程度上取决于包含的父选择器#text

您正在尝试使用 find :

.find('#test div:first-child img')

如果是这样的话,确实会起作用

$('body').find('#test div:first-child img')

但是,如果您想将其用作普通选择器,请尝试以下操作:

$('#test div:first-child img')

不知道你在追求什么:/

更新的答案

简单的:

$('#test > div > div > div > div:first img')
于 2013-09-11T10:22:54.277 回答
0
$('#test').find('div').has('img')[0].find('img')

更新:这需要更多的调整:)

var sdf = $('#test div').filter(function(){
    return $(this).children('img').size() > 0;
})[0];
$(sdf).children('img').css({'border': 'red 1px solid'})

http://jsfiddle.net/cwCCU/1/

注意:第一个版本捕获了所有具有 img 的 div 的父级 div,因此 [0] 不是目标 div。第二个版本只有作为 img 的直接父级的 div,所以 [0] 包含其中的第一个 :)

于 2013-09-11T10:25:07.777 回答
0

一个班轮

$("#test div:has(> img):first img")

http://jsfiddle.net/Eb5sA/

于 2013-09-11T11:06:02.707 回答