Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在jquery中遍历dom?_Javascript_Jquery_Dom - Fatal编程技术网

Javascript 在jquery中遍历dom?

Javascript 在jquery中遍历dom?,javascript,jquery,dom,Javascript,Jquery,Dom,我有类似以下代码: <div class="class1"> <a class="link1" src="...">...</a> </div> <div class="class2"> <a class="link2" src="...">...</a> </div> ... ... 假设我当前处于类link2的click事件中,如何获取link1超链接的src值?这些都是动态

我有类似以下代码:

<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。谢谢。

一个灵活的解决方案可能是,如果您在调用class1和class2的div中添加一个公共标识符,您可以找到您父母以前的兄弟姐妹。例如,您可以使用以下内容代替HTML:

$('a.link2').click(function() {
    console.log($(this).parent().prev('div.class1').children('a.link1'));
});
<div class="class1 someClass">
    <a class="link1 someLink" src="...">...</a>
</div>
<div class="class2 someClass">
    <a class="link2 someLink" src="...">...</a>
</div>
当然,您首先要检查“prev”兄弟姐妹是否真的存在。你可以适应“发现下一个”,等等

祝你好运

-f

一个灵活的解决方案可能是,如果您在调用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>
当然,您首先要检查“prev”兄弟姐妹是否真的存在。你可以适应“发现下一个”,等等

祝你好运

-f

我想也许你的意思是问如何获得href,而不是src??在这种情况下,您可能会问$prevContainer.find('a').attr('href'),我想您的意思也可能是问如何获取href,而不是src??在这种情况下,您将询问$prevContainer.find('a').attr('href'))