jQuery - 将一个 div 移动到其父元素的顶部

7

我有一个脚本,如果一个div存在,我希望它位于其父div的顶部。这是我的尝试:

        if ($(".pane-bundle-hblock .field-name-field-hblock-image-right").length){
            $(".pane-bundle-hblock .field-name-field-hblock-image-right").parent().prepend($('this'));
        }

我错在哪里了?

2个回答

23

$('this') 选择 <this></this> 元素。

我会这样做:

$(".pane-bundle-hblock .field-name-field-hblock-image-right").each(function() {
    $(this).parent().prepend(this);
});

如果元素不存在,.each() 就不需要迭代任何内容,所以您实际上不需要检查它是否存在。


1
我不知道在条件语句中是否有任何特殊的上下文环境。您可能需要更明确地说明您要移动的内容:
JSFiddle示例:http://jsfiddle.net/BKg6z/
if ($(".pane-bundle-hblock .field-name-field-hblock-image-right").length){
    $(".pane-bundle-hblock .field-name-field-hblock-image-right").parent().prepend($(".pane-bundle-hblock .field-name-field-hblock-image-right"));
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接