我有一些CMS生成的代码:
<div class="block">
<a class="link" href="#">Link</a>
<h4>Header here</h4>
<div class="text">Some text here</div>
</div>我需要将链接移到text div之后。我已经尝试过了:
$(document).ready(function() {
$('.block').each(function() {
$('.block a.link').insertAfter('.block div.text');
});
});但这只会导致链接重复大约10次(循环的次数。
我尝试使用$(this),但我不太明白如何编写正确的语法来在函数中附加a.link ...如下所示:
$(this).a.link.insertAfter($(this).div.text);发布于 2011-07-28 22:53:02
使用siblings和after,这样的东西应该可以工作
$('.block a.link').each(function() {
$(this).siblings('.text').after(this);
});这意味着“对于每个匹配的元素,找到与.text匹配的元素,并在其后面插入原始元素”。
或者,您可以这样做:
$('.block a.link').each(function() {
$(this).parent().append(this);
});这假设您希望将元素放在div.block的末尾。
发布于 2011-07-28 22:53:02
你可以这样做(如果你想要它在带有类文本的div之后):
$(document).ready(function() {
$('.block a').each(function(){
$(this).next('div.text').after(this);
});
});或者(如果你想把它放在div with class块之后)
$(document).ready(function() {
$('.block a').each(function(){
$(this).closest('div.block').after(this);
});
});发布于 2011-07-28 22:53:19
试试这个:
$(document).ready(function() {
$('.block').each(function() {
var divtext = $('div.text', this)
$('a.link', this).insertAfter(divText);
});
});https://stackoverflow.com/questions/6860961
复制相似问题