0

我想在将要添加的元素中使用另一个现有元素类进行添加。为了避免混淆,假设我只知道父元素类在开头有单词“box”,并且可以说类的其余部分是随机生成的。

因此我显然不能写例如:

.prepend('<div class="box-something_more"></div>'); 

因为据我所知,父元素类可能是“box-nothing”或“box-something-else”或数百万其他东西。

html结构:

<div class="box-something"> <!-- source of the box- class -->
    <div class="box-something_more"></div> <!-- prepended element -->
    <div class="box-something_evenmore"></div> <!-- prepended element -->

</div>

<div class="box-two"> <!-- source of the box- class -->
    <div class="box-two_more"></div> <!-- prepended element -->
    <div class="box-two_evenmore"></div> <!-- prepended element -->

</div>

所以需要发生的是,将被前置的元素从父元素开始它们的类。

http://jsfiddle.net/tDUpD/2/

编辑:这似乎可以解决问题。http://jsfiddle.net/tDUpD/3/

4

1 回答 1

0

这是否符合您的想法?如果不是,请尝试更清楚地说明您的问题:

例子:

HTML

<div class="foo"></div>
<div class="doo"></div>

JS

var childClasses = ["bar", "baz"];

$('.foo, .doo').each(function() {
    var $self = $(this);
    $.each(childClasses, function(i, childClass) {
        $self.append($('<div/>', {
            'class': $self.attr('class') + "_" + childClass
        }));
    });
});

= 生成的 HTML

<div class="foo">
  <div class="foo_bar"></div>
  <div class="foo_baz"></div>
</div>
<div class="doo">
  <div class="doo_bar"></div>
  <div class="doo_baz"></div>
</div>
于 2011-05-30T08:15:45.130 回答