以斜体
编辑 用简短的话来回答:jQuery无法处理display:none
对象位置但可以处理visability
,你改变了吗?
我问这个问题,并希望自己回答这个问题,以防止别人像我一样陷入同样的陷阱。
我已经(有)使用jQuery和 div
方法在页面上定位$(e).offset
的工作解决方案。好的第一步,然后让我的脚本更符合jQuery(从JavaScript转到jQuery), offset
似乎不再起作用 - 虽然我不知道这个问题。 我的元素无法预测地移动
答案 0 :(得分:-1)
看看:jQuery doc (Note: jQuery does not ...)
jQuery不喜欢(display:none)不可见元素的偏移量
如果你有一个基于visible
属性的工作展示/隐藏/位置逻辑,即。 visible:hide
稍后展示,无法使用jQuery $(...).show/hide
。你必须在你的css中切换到/使用display:none
,因为jQuery使用这个属性来管理“可见性”。
- 大部分时间 - 最简单的事情是$(...).show
你的元素在使用$(...).offset(...)
之前(显示然后移动它),而不是在脚本的最后一个动作中使用它(然后移动它)显示它)