Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jQuery将元素插入DOM时,如何防止页面在加载时短暂跳转?_Javascript_Jquery - Fatal编程技术网

Javascript 使用jQuery将元素插入DOM时,如何防止页面在加载时短暂跳转?

Javascript 使用jQuery将元素插入DOM时,如何防止页面在加载时短暂跳转?,javascript,jquery,Javascript,Jquery,我使用jQuery将DIV(从隐藏的iFrame)移动到页面顶部,如下所示: $(document).ready(function($) { $('#precontainer').clone().insertBefore(parent.document.querySelectorAll(".maincontainer"));}); 每当我重新加载该页面时,我都会非常短暂地看到原始页面跳下,为插入的DIV腾出空间。这种行为可以预防吗 我现在要做的是在“maincontainer”的顶部用CSS给

我使用jQuery将DIV(从隐藏的iFrame)移动到页面顶部,如下所示:

$(document).ready(function($) {
$('#precontainer').clone().insertBefore(parent.document.querySelectorAll(".maincontainer"));});
每当我重新加载该页面时,我都会非常短暂地看到原始页面跳下,为插入的DIV腾出空间。这种行为可以预防吗

我现在要做的是在“maincontainer”的顶部用CSS给它一个大的边距,这个边距大约和插入在它上面的“precontainer”DIV一样高,插入这个DIV之后,我使用jQuery从“maincontainer”中删除上边距,所以跳跃或闪烁的效果就不那么严重了。但总有更好的办法吧


我应该提到的是,我只能访问iFrame,我正在使用它来操作其父级的DOM(其中包含“maincontainer”)。我无法修改父级,因此我必须通过iFrame来完成所有操作。

您可以放置一个“占位符”div并插入“预容器”,而不是给父级页面提供上边距通过这种方式,您不应该看到闪烁/跳跃效果。

删除.ready()并在#预容器html代码下添加javascript代码。我修改了我的问题,以反映我无法将html或JS添加到包含“主容器”的父容器中的事实(我使用的是一个软件解决方案,我不允许直接通过JS/CSS修改)。如果你删除了on文档,它应该会更快,请看,我应该提到,除了CSS和jQuery/javascript之外,我不能以任何方式修改父级。所以很遗憾,我不能添加占位符DIV。