Javascript 为什么prepend方法会从HTML的实际位置删除它
我有一个键盘插件,我正在尝试编辑。所以为了改变插件的布局,我想让它覆盖整个屏幕。我正处于这个过程的开始阶段,所以我想从底部删除HTML代码,然后将它们粘贴到文档的Javascript 为什么prepend方法会从HTML的实际位置删除它,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有一个键盘插件,我正在尝试编辑。所以为了改变插件的布局,我想让它覆盖整个屏幕。我正处于这个过程的开始阶段,所以我想从底部删除HTML代码,然后将它们粘贴到文档的主体元素的正下方。这样,我将使用屏幕属性和位置属性。像这样 $('#vboard').css('width', screen.width); $('#vboard').css('position', 'absolute'); 等等 我所做的 我使用了prepend方法,将其附加到body元素childs的顶部。这是我的密码 var v
主体
元素的正下方。这样,我将使用屏幕属性和位置属性。像这样
$('#vboard').css('width', screen.width);
$('#vboard').css('position', 'absolute');
等等
我所做的
我使用了prepend方法,将其附加到body元素childs的顶部。这是我的密码
var vbrd = $('#vboard');
/* Paste it inside the HTML directory */
$('body').prepend(vbrd);
我所期望的
我所期望的是,它只会创建body元素的一个新节点(子节点),并将HTML保存在body元素最初所属的位置。我正在使用ASP.NET网页,因此每个网页都是在中创建的
<div> <!-- Inside the body element -->
<!--Here-->
</div>
怎么搞的?
事情是这样的
发生的事情是,当我试图这样做的时候,它被贴到了身体上。但同时,它从放置它的元素中删除了HTML节点
这是预期的吗?因为无论我在哪里搜索,它都会告诉我使用.remove()
方法来删除元素。但是在这个场景中它不是必需的。是的。这是意料之中的
Prepend将元素放在您让它放的地方,元素不能同时放在两个地方
它不会克隆它。是的。这就是它在jQuery中的工作方式,在裸DOM API中的工作方式,以及两者都记录的方式。如果要插入副本而不是移动原件,请使用
$('body').prepend(vbrd.clone())
$('body')
!=<代码>$(“#正文”)。前者是
标记。后者是您的
。我知道,我正在使用ASP.NET,它将在div元素下创建元素。:)正是我们所说的布局:)我之所以提出这个问题,是因为你的问题有点让人困惑,你想在哪里添加一个节点。哦,对不起!如果它令人困惑,我必须删除它…我现在已经删除了,谢谢:)哦,现在它有意义了!:)谢谢你的澄清,兄弟:)