在 jquery 中移动元素

Move a Element in Jquery

本文关键字:元素 移动 jquery      更新时间:2023-09-26

我想在DIV中加入HTML中的字体元素。同一页面中将有多个具有唯一 ID 的div。

<div id="id-unknown">
  "Some Text"
 <font color="red">*</font>
</div>

<div id="id-unknown">
  <font color="red">*</font>
  "Some Text"
</div>

我使用这个 Jquery 代码来实现它,但它获取所有字体并附加到每个div 元素之前

$("font").prependTo($("font").parent());

http://jsfiddle.net/s4Ehw/

如果您只想为特定div 执行此操作,只需添加 ID 选择器并使用 .each 获取对特定元素的引用 ( this

$('#id1, #id2, #id3').children('font').each(function() {
    $(this).prependTo(this.parentNode);
});

如果碰巧每个font标签都需要此更改,请使用与上述相同的.each结构,但使用$('font'),根据您的原始代码和 Si Donaldson 的答案。

为了获得额外的性能,请将函数体替换为:

var parent = this.parentNode;
parent.insertBefore(this, parent.firstChild);

即用直接的 DOM 操作替换 jQuery 调用。

您需要先使用 $.each 迭代每个,然后您可以单独处理每个!

http://jsfiddle.net/sidonaldson/s4Ehw/2/

$("font").each(function(){
    $(this).prependTo($(this).parent());
});

使用 jQuery 每个函数来管理循环中的元素jsfiddle.net/s4Ehw/6/

$("font").each(function(){
  $(this).prependTo($(this).parent());
})
$.each($("font"), function(index, element) {
    console.log($(element));
    $(element).prependTo($(element).parent());
});