Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/429.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 展开一个div以覆盖另一个div_Javascript_Jquery_Css - Fatal编程技术网

Javascript 展开一个div以覆盖另一个div

Javascript 展开一个div以覆盖另一个div,javascript,jquery,css,Javascript,Jquery,Css,我使用jQuery在悬停div时展开它,使其覆盖页面的整个宽度。它包含一个大表,我需要构建一个低分辨率,但实际上每个人都有一个更高的分辨率,所以这是一个公认的解决方法。我的问题是,该div“跳”到其他div的下方,而不是像我希望的那样覆盖它们。有人知道如何做到这一点吗 我已经创建了一个jsfiddle,因此您可以了解其主要思想: 将灰色框悬停,使其向右扩展,覆盖侧边栏中的#asd2,而不是其下方。添加此css: #asd2{ position:absolute; z-index:-1;

我使用jQuery在悬停div时展开它,使其覆盖页面的整个宽度。它包含一个大表,我需要构建一个低分辨率,但实际上每个人都有一个更高的分辨率,所以这是一个公认的解决方法。我的问题是,该div“跳”到其他div的下方,而不是像我希望的那样覆盖它们。有人知道如何做到这一点吗

我已经创建了一个jsfiddle,因此您可以了解其主要思想:

将灰色框悬停,使其向右扩展,覆盖侧边栏中的#asd2,而不是其下方。

添加此css:

#asd2{
 position:absolute;
 z-index:-1;        
}
#log{
    background:white;
}
示例:

检查此小提琴:


解决方案包括在展开时向log div添加绝对定位,在折叠时将其取出。还包括一个小补丁,以避免在设置动画时闪烁。

是否有理由不适合使用lightbox/thickbox之类的工具

或者,您需要使用绝对定位和z索引。我建议在制作动画之前先弄清楚你的理想布局。将它放在CSSEdit/Firebug/anywhere中,这样您的框就正好位于您想要的位置,然后就可以简单地添加到动画脚本中


或者只使用现成的灯箱。

这不是一个完美的答案:


但在这里,我使用了一个子容器,允许您拥有100%的宽度和一些边框。

谢谢,这很好,但仅适用于asd2,if,asd是多行,无论如何都会导致if跳跃。我需要一个动态的解决方案,因为我不知道框的内容(真实系统中有更多的框),不幸的是,这并不比我原来的解决方案更好。这很好,但我更改了动画变量,并使用了过滤器(':not(:animated)):布局已经完成,动画并不重要,重要的是它在其他窗口的顶部可见。我用fancybox做一些东西,但这需要在任何时候都可以看到,而不需要点击任何地方。不,我的意思是建立二级布局-一个所有东西都被放大的布局。这样,您就知道需要转换到什么css。一旦你做到了,一切都会变得简单。啊,好吧,我明白了,是的,这可能是最好的方法,但这是唯一需要做的事情,所以现在它完成了。如果它不应该是一个内部工具,那么是的,这将是一条路要走。