抓住某个div内的img

时间:2014-01-31 20:23:19

标签: javascript jquery

我的页面中有以下代码:

$('img[title!=""]').each(function() {

它目前选择网站中的所有img,但我只想获取名为'layout'的某个div中的图像,其中title不为null,我该怎么做?< / p>

3 个答案:

答案 0 :(得分:1)

假设layout是div的ID

使用

$('img[title!=""]', '#layout').each(function() {

OR

$('#layout img[title!=""]').each(function() {

答案 1 :(得分:0)

$("#myDiv").find('img[title!=""]').each(function() {
    // ...
});

这会抓住<img>中的所有#myDiv

<div id="myDiv">
      <img src=" ... />
      <img src=" ... />
      <img src=" ... />
</div>

答案 2 :(得分:0)

jsFiddle demo

首先,您可能需要允许那些根本没有title属性的元素。这种情况将包含在:

$('#layout img[title]').each(function() {

但是,您必须检查title属性是否存在但是空白:

if ( this.title != "" )

把它放在一起:

<强> HTML:

<div id="layout">
    <img title="kitten01" src="http://placekitten.com/150/150" />
    <img src="http://placekitten.com/151/151" />
    <img title="" src="http://placekitten.com/152/152" />
    <img title="kitten04" src="http://placekitten.com/153/153" />
</div>
<div id="otherdiv">
    <img title="dog01" src="http://placedog.com/150/150" />
    <img title="dog02" src="http://placedog.com/150/150" />
    <img title="dog03" src="http://placedog.com/150/150" />
</div>

<强>的jQuery / JS:

$('#layout img[title]').each(function() {
    if ( this.title != "" )
    alert( this.title );
});

注意:您可能已经知道这一点,但是fwiw上面的示例假定您的div被称为layout,因为它具有名为layout的ID属性。如果div为class="layout"则为:

$('.layout img[title]').each(function() {