javascript - 可能的 Safari 错误?修复了相对 div 内的 div 没有动画

标签 javascript jquery html css safari

我有一些在 FF 和 Chrome 中运行良好的 JQuery,但我注意到它在 mac 上的 Safari 6.1 中不起作用。本质上,它是一个设置为 position:relative 的容器,其中一个框设置为 position:fixed。当我尝试将其设置为左侧动画时,容器会移动但固定元素不会移动。经进一步测试,如果将框设置为 relative,则框会向左移动;如果设置为 fixed,则框会再次设置动画,但不是两者的组合。我需要将其固定,因此将其设置为absolute 无济于事。同样,这在 FF 和 Chrome 中运行良好。

如果你有 Safari,请查看这个 fiddle ,让我知道是否有人遇到过这种情况:

编辑

我忘了这实际上是在使用 .css 而不是 .animate 并且它在 $(window).scroll(function()". 更新了下面的 fiddle :

JSFIDDLE

最佳答案

我会说这在 FF 和 Chrome 中比在 Safari 中更像是一个错误。固定位置是相对于视口(viewport)定位的。如果您要将 left/top 值添加到 .box,您将在 FF 和 Chrome 中看到相同的行为。

.box {
    height: 100px;
    width: 100px;
    background: black;
    position: fixed;
    left: 0;
    top: 0;
}

JSFiddle

关于javascript - 可能的 Safari 错误?修复了相对 div 内的 div 没有动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20954991/

相关文章:

javascript - 如何找到没有 id、名称、类、属性等的元素?

javascript - 在继续处理之前等待事件

javascript - 有什么方法可以延迟在 beforeModel Hook 中触发 Embers 模型?

jquery - 如何使用 jQuery 在选择框中预选选项

javascript - getElementsByTagName() 方法没有按预期工作

javascript - 如何测量脚本的执行时间?

javascript - 从文本字符串获取属性

jquery - 如何让 ng-click 函数等待 jQuery 脚本完成后再执行?

html - 我无法通过 CSS 显示我的背景

html - 使用 HtmlAgilityPack 将 HTML 转换为字符串