jQuery 将特殊锚点的 href 设置为下一个锚点标签的 href
jQuery set href of special anchor to href of next anchor tag
我想找到 link 个子 <a>
并将其附加到父 <a>
。
这是我的代码。
这个returns同link.
html代码
<div class="wrap">
<ul class="main-ul">
<li>
<a class="child-link" href="link1"></a>
</li>
</ul>
<a class="to-attach" href=""></a> <<--to be link1
<ul class="main-ul">
<li>
<a class="child-link" href="link2"></a>
</li>
</ul>
<a class="to-attach" href=""></a> <<--to be link2
<ul class="main-ul">
<li>
<a class="child-link" href="link3"></a>
</li>
</ul>
<a class="to-attach" href=""></a> <<--to be link3
.
.
.
.
.
</div>
jQuery代码
jQuery(".main-ul").append("<a class='to-attach'></a>");
var link = jQuery(".child-link").attr("href");
jQuery(".to-attach").attr("href", link);
请帮帮我。谢谢。
像这样吗?
$('.child-link').each(function() {
var href = $(this).attr('href');
$(this).closest('ul').next('a').attr('href', href);
});
您可以使用 .attr()
和回调函数代替 .each()
$(".to-attach").attr("href", function(){
return $(this).prev("ul").find(".child-link").attr("href");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="wrap">
<ul class="main-ul">
<li>
<a class="child-link" href="link1">child-link</a>
</li>
</ul>
<a class="to-attach" href="">to-attach</a>
<ul class="main-ul">
<li>
<a class="child-link" href="link2">child-link</a>
</li>
</ul>
<a class="to-attach" href="">to-attach</a>
<ul class="main-ul">
<li>
<a class="child-link" href="link3">child-link</a>
</li>
</ul>
<a class="to-attach" href="">to-attach</a>
</div>
我想找到 link 个子 <a>
并将其附加到父 <a>
。
这是我的代码。
这个returns同link.
html代码
<div class="wrap">
<ul class="main-ul">
<li>
<a class="child-link" href="link1"></a>
</li>
</ul>
<a class="to-attach" href=""></a> <<--to be link1
<ul class="main-ul">
<li>
<a class="child-link" href="link2"></a>
</li>
</ul>
<a class="to-attach" href=""></a> <<--to be link2
<ul class="main-ul">
<li>
<a class="child-link" href="link3"></a>
</li>
</ul>
<a class="to-attach" href=""></a> <<--to be link3
.
.
.
.
.
</div>
jQuery代码
jQuery(".main-ul").append("<a class='to-attach'></a>");
var link = jQuery(".child-link").attr("href");
jQuery(".to-attach").attr("href", link);
请帮帮我。谢谢。
像这样吗?
$('.child-link').each(function() {
var href = $(this).attr('href');
$(this).closest('ul').next('a').attr('href', href);
});
您可以使用 .attr()
和回调函数代替 .each()
$(".to-attach").attr("href", function(){
return $(this).prev("ul").find(".child-link").attr("href");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="wrap">
<ul class="main-ul">
<li>
<a class="child-link" href="link1">child-link</a>
</li>
</ul>
<a class="to-attach" href="">to-attach</a>
<ul class="main-ul">
<li>
<a class="child-link" href="link2">child-link</a>
</li>
</ul>
<a class="to-attach" href="">to-attach</a>
<ul class="main-ul">
<li>
<a class="child-link" href="link3">child-link</a>
</li>
</ul>
<a class="to-attach" href="">to-attach</a>
</div>