4

我正在尝试获取下面显示的两个随机生成的 div ID,并将它们包装在我可以控制的自定义 div 中。在 jQuery API 上搜索解决方案,但仍然没有想法。

这是示例的预览: 2 个随机生成的 ID + 自定义类

好的,如您所见,有两个<div id="random_string"></div>和一个自定义<div class="wrap_awm"></div>

由于我无法从上面定位两个 ID,我不知道如何告诉 jQuery,从 wrap_awm 上方获取两个 div 并将它们放在“.wrap_awm”中。就那么简单?

4

5 回答 5

4

您正在寻找的是.prevAll()

var $wrap = $('.wrap_awm');
$wrap.prevAll(':lt(2)').appendTo($wrap);

它与:lt()选择器结合使用仅使用前两个元素。

于 2013-05-21T01:39:07.750 回答
4

就是这么简单:

var w = $(".wrap_awm");
w
  .prev()
  .prev()
  .addBack()
  .appendTo(w);

查看 JS Fiddle 的实时工作示例

于 2013-05-21T01:40:23.967 回答
1
$(".wrap_awm")
  .prev("div")
     .appendTo(".wrap_awm")
     .end()
  .prev("div")
     .appendTo(".wrap_awm");
于 2013-05-21T01:23:40.493 回答
0

这是简单易读的,但可能不是应该如何完成......

$(document).ready(function () {
    var prev1 = $('.wrap_awm').prev().prev();
    var prev2 = $('.wrap_awm').prev();
    $('.wrap_awm').html(prev1).append(prev2);
});

JSFiddle

于 2013-05-21T01:37:48.293 回答
0

您可以使用 jquery API 中的 .prev() 函数来选择自定义 div 的上一个兄弟。然后您可以存储它并在其上应用相同的 .prev() 函数,即:

var previousSibling1 = $(".wrap_awm").prev();
var previousSibling2 = $(previousSibling1).prev();

您现在可以引用您之前的两个兄弟姐妹,并且可以将它们移动到您的自定义 div。

于 2013-05-21T01:24:47.233 回答