gpt4 book ai didi

javascript - jQuery insertBefore() 在 insertAfter() 之后

转载 作者:行者123 更新时间:2023-11-29 18:00:21 25 4
gpt4 key购买 nike

正如您在此 https://jsfiddle.net/yxvwfh6x/ 中所见我正在尝试在 div 之后和之前添加一个元素。

var hi = $('<h1>Hi</h1>');
var div = $('div');
hi.insertAfter(div);
hi.insertBefore(div);

在结果 insertBefore 中删除最后一个 Hi。请尝试此代码以了解发生了什么。

var hi = $('<h1>Hi</h1>');
var div = $('div');
hi.insertAfter(div);
setTimeout(function(){
hi.insertBefore(div);
},1000);

这是jQuery的bug吗?

最佳答案

因为hi指的是同一个对象,所以遵循以下顺序

  • 在第一个之后添加 -> hi1
  • 在第二个之后添加了一个克隆副本 -> hi2
  • 在第一个之后删除,在第一个之前添加。 -> 嗨2
  • 在第二个之前添加了一个克隆副本 -> hi3

改用这个

var div = $('div');
$('<h1>Hi</h1>').insertAfter(div);
$('<h1>Hi</h1>').insertBefore(div);

关于javascript - jQuery insertBefore() 在 insertAfter() 之后,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35449655/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com