简体   繁体   English

如何将每个同级元素附加到jQuery中的同级元素?

[英]How to append each sibling element to its sibling in jQuery?

I have div's in wordpress and each div has a <ul></ul> 我在WordPress中有div,每个div都有一个<ul></ul>

<div class="list-item">
    <div class="elimore_trim">
    Lorem ipsum
    </div>
    <ul class="hyrra-forrad-size-list">
    <li>Hyra 1</li>
    <li>Content 1</li>
    </ul>
</div>

<div class="list-item">
    <div class="elimore_trim">
    Lorem ipsum
    </div>
    <ul class="hyrra-forrad-size-list">
    <li>Hyra 2</li>
    <li>Content 2</li>
    </ul>
</div>

I want to append each class="hyrra-forrad-size-list" to its sibling class="list-item" 我想将每个class="hyrra-forrad-size-list"附加到其同级class="list-item"

My current jquery code looks like below: 我当前的jquery代码如下所示:

var j = jQuery.noConflict();

j(function() {
  j('.list-item .hyrra-forrad-size-list').each(function() {
    j(this).appendTo('.elimore_trim');
  });
});

The problem with my code above is that all elements that have the class hyrra-forrad-size-list is being inserted to each element that has a class of elimore_trim 上面我的代码的问题是,将所有具有hyrra-forrad-size-list类的元素插入到具有elimore_trim类的每个元素中

For example: 例如:

<div class="list-item">
    <div class="elimore_trim">
    Lorem ipsum
    </div>
    <ul class="hyrra-forrad-size-list">
    <li>Hyra 1</li>
    <li>Content 1</li>
    </ul>

    <ul class="hyrra-forrad-size-list">
    <li>Hyra 2</li>
    <li>Content 2</li>
    </ul>

</div>

<div class="list-item">
    <div class="elimore_trim">
    Lorem ipsum
    </div>
    <ul class="hyrra-forrad-size-list">
    <li>Hyra 1</li>
    <li>Content 1</li>
    </ul>

    <ul class="hyrra-forrad-size-list">
    <li>Hyra 2</li>
    <li>Content 2</li>
    </ul>
</div>

Do you know how can i just transfer the class hyrra-forrad-size-list to its own sibling only? 你知道我怎么能只将类hyrra-forrad-size-list转移到它自己的兄弟姐妹中? Any idea is appreciated. 任何想法表示赞赏。 Thanks 谢谢

Though .appendTo() and .append() both works same, their syntax is little bit different. 尽管.appendTo().append()都工作相同,但是它们的语法却有点不同。

.appendTo() insert every element in the set of matched elements to the end of the target like .appendTo()将匹配元素集中的每个元素插入到目标的末尾,例如

$(element_to_be_append).appendTo(append_to_this);

.append() insert content, specified by the parameter, to the end of each element in the set of matched elements like .append()将参数指定的内容插入到匹配元素集中每个元素的末尾,例如

$(append_to_this).appendTo(element_to_be_append);

Target the parent() to find() the element specific element you want to append. parent()find()要附加的元素特定元素。

Using .appendTo() : 使用.appendTo()

 var j = jQuery.noConflict(); j(function() { j('.list-item .hyrra-forrad-size-list').each(function() { j(this).parent().find('.elimore_trim').appendTo(j(this)); }); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="list-item"> <div class="elimore_trim"> Lorem ipsum </div> <ul class="hyrra-forrad-size-list"> <li>Hyra 1</li> <li>Content 1</li> </ul> </div> <div class="list-item"> <div class="elimore_trim"> Lorem ipsum </div> <ul class="hyrra-forrad-size-list"> <li>Hyra 2</li> <li>Content 2</li> </ul> </div> 

Using .append() : 使用.append()

 var j = jQuery.noConflict(); j(function() { j('.list-item .hyrra-forrad-size-list').each(function() { j(this).append(j(this).parent().find('.elimore_trim')); }); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="list-item"> <div class="elimore_trim"> Lorem ipsum </div> <ul class="hyrra-forrad-size-list"> <li>Hyra 1</li> <li>Content 1</li> </ul> </div> <div class="list-item"> <div class="elimore_trim"> Lorem ipsum </div> <ul class="hyrra-forrad-size-list"> <li>Hyra 2</li> <li>Content 2</li> </ul> </div> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM