我有一个页面,必要的元素被重新定位在一些额外的html属性上。
例如:
<div class="contentplate" relativePosition="top-left" relx="1" rely="3" relw="14" relh="8" relFontSize="80"></div>
被类“contentplate”重新定位。它定位于与实际窗口大小相关的光栅。它的子元素被递归地处理,以获得相对位置,也可以在这个容器中工作。所有这些都如预期的那样工作。
当使用jQuery('parentcontainer').animate( {left:0},100 )或其他东西时,问题就开始了:以某种方式重新定位元素leads,jquery只处理父元素,而不是孩子元素。有趣的部分是在te动画完成后,孩子的位置被jQuery以某种方式修正了,但正如所说的那样没有动画。
所有元素的样式都是position:absolute,overflow:hidden
不会,修正算法只在调整窗口大小时运行,或者在页面加载一次之后才运行。
如果你感兴趣,我有3个测试给你:
站点完全动态重新定位(动画失败,firefox除外)
http://www.bourier.org/demos/jquery_animation_failure/test_2.html
没有活动重新定位的重新定位的站点的快照(所有浏览器,都很好)
http://www.bourier.org/demos/jquery_animation_failure/test.html
一个带有黄色网格的完全动态重新定位的站点,您可以看到已启用
http://www.bourier.org/demos/jquery_animation_failure/test_3.html
屏幕截图,您可以看到启用了网格的动态页面
耽误您时间,实在对不起
发布于 2012-11-19 22:58:49
看起来,这是浏览器引擎中的一个bug,与对上面z排序的div的画布和CSS的修改有关。
画布仅用于检查网格功能是否正确,例如调试目的。
我移除了画布,现在一切正常。
有一些非常错误的东西,可以在这里使用chrome developer工具来显示:元素被调试器和鼠标指针检测到正确的位置,但它们没有显示在那里。这很奇怪。
我不想深入挖掘,但在我看来,Firefox的行为是正确的,Chrome和Safari做了一些非常错误的事情。
如果我应该向chrome开发人员发布问题报告,请留言,我会这样做的。
https://stackoverflow.com/questions/13454876
复制相似问题