2014-10-07 170 views
-3

我試圖在父母的父母父母對象中定位一個圖片。父母雙親父母對象div

嘗試:

$(event.target).parents().eq(2).$("img").css("opacity", .3);

$(event.target).parent().parent().parent().$("img").css("opacity", .3);

$(event.target).parent().parent().parent("img").css("opacity", .3);

編輯:剛剛意識到它的父父,但即使相應的修改,下面的代碼仍然不正常。

這裏是HTML:

<div> 
<div> 
<button type="button" class="page3">Read more</button></div> 
</div> 
<img src="img/imgs-slides/3.png" border="0" alt=""> 
</div> 

JS:

$("button.page3").click(function(event) { 
$(event.target).parents().eq(1).$("img").css("opacity", .3); //doesnt work 
$(event.target).closest("img").css("opacity", .3); //neither 
} 
+3

['.closest()'](HTTP://api.jquery .com/closest /)可能會更好。 – 2014-10-07 23:25:47

+3

您可以發佈實際的HTML結構嗎? – tymeJV 2014-10-07 23:26:52

回答

3

如果這是HTML的結構

<div> 
    <img src="http://placehold.it/100x100"/> 
    <div> 
     <div> 
      <button id="btn">Test</button> 
     </div> 
    </div> 
</div> 

然後,你可以選擇圖像並更改CSS通過這個

$(event.target).parent().parent().parent().find('img').css('opacity', '.3'); 

或者乾脆

$(event.target).parents('div').find('img').css('opacity', '.3'); 

正如@強尼-Y

DEMO在評論中指出:http://jsfiddle.net/pv6081cz/

+2

爲什麼不使用父母? $(event.target).parents(「div」)。find('img').css('opacity','.3'); – 2014-10-07 23:47:43

+0

這也會起作用,我只是試圖解釋,該操作沒有使用正確的「父」數字,也沒有正確的方法來查找IMG標籤。我更新了答案e以包含您的建議 – 2014-10-08 02:54:46