jQuery将div添加到父兄弟或孩子?

时间:2013-12-30 07:23:03

标签: jquery parent each siblings

我有以下HTML

<li class="post" style="width: 621px;">
    <div class="mediaholder">
        <div class="mediaholder_innerwrap overlay cap-icon enlarge">
        <a href="#" class="view" data-rel="lightbox" rel="lightbox">
            <img width="440" height="330" src="#" class="attachment-portfolio-index wp-post-image">
        </a>
        </div>
    </div>
    <div class="detailholder">
        <h4 class="post-title"><a href="#">Example Title One</a></h4>
        </div>
    </div>
</li>
<li class="post" style="width: 621px;">
    <div class="mediaholder">
        <div class="mediaholder_innerwrap overlay cap-icon enlarge">
        <a href="#" class="view" data-rel="lightbox" rel="lightbox">
            <img width="440" height="330" src="#" class="attachment-portfolio-index wp-post-image">
        </a>
    </div>
    </div>
    <div class="detailholder">
        <h4 class="post-title"><a href="#">Example Title Two</a></h4>
        </div>
    </div>
</li>

我正在尝试使用此jQuery在.post-title内的a.view类中移动li

jQuery(document).ready(function ($) {
    $('.post-title').each(function () {
        $(this).parents('li').next('a.vew').append(this);
    });
});

对于每个post-title,我会把它拿到父母li a.view上,但它不起作用。

我尝试了下面的post-titlemediaholder添加到a.view内,我无法将此课程纳入jQuery(document).ready(function ($) { $('.post-title').each(function () { $(this).parents('li').children('.mediaholde').append(this); }); }); 课程。这就是我工作http://jsfiddle.net/Zn6Eq/1/如果你能分叉/更新我真的很感激。

{{1}}

3 个答案:

答案 0 :(得分:5)

您遇到的问题很少,比如班级名称中的拼写错误vew也是li的后代,所以需要使用find()而不是next()

jQuery(document).ready(function ($) {
    $('.post-title').each(function () {
        $(this).closest('li').find('a.view').append(this);
    });
});

演示:Fiddle

答案 1 :(得分:1)

尝试以下代码

$(document).ready(function ($) {
    $('h4.post-title').each(function () {
        $(this).parents('li').find('a.view').append(this);
    });
});

js fiddle:http://jsfiddle.net/TLC9r/3/

答案 2 :(得分:1)

以下是小提琴的工作示例:

Working Demo

 jQuery(document).ready(function ($) {
    $('.post-title').each(function () {
   var obj = $(this).parents('li').find('a.view');
        $(obj).append(this);
        alert($(obj).html());
    });
});