簡體   English   中英

在jQuery中遍歷dom?

[英]traversing dom in jquery?

我有類似於以下代碼:

<div class="class1">
    <a class="link1" src="...">...</a>
</div>
<div class="class2">
    <a class="link2" src="...">...</a>
</div>

假設我當前處於類link2的click事件中,如何獲取link1超鏈接的src值? 這些是動態生成的,因此該代碼可能有很多實例,因此我需要遍歷$ this的dom才能到達link1。 謝謝。

$('a.link2').click(function() {
    console.log($(this).parent().prev('div.class1').children('a.link1'));
});

靈活的解決方案可能是,如果您在調用class1和class2的div中添加了通用標識符,則可以找到父級的先前同級。 例如,代替HTML,您可以擁有:

<div class="class1 someClass">
    <a class="link1 someLink" src="...">...</a>
</div>
<div class="class2 someClass">
    <a class="link2 someLink" src="...">...</a>
</div>

然后,在所有鏈接的onclick函數中,例如,

$('a.someLink').click(function() {
    var $someContainer = $(this).parents('someClass:first');
    var $prevContainer = $someContainer.prev();
    // now you can work with $prevContainer  ...
});

您當然首先要檢查“上一個”同級是否確實存在。 您可以適應查找下一個,等等。

祝好運!
-F!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM