【问题标题】:jQuery position() not working properly in Safari and OperajQuery position() 在 Safari 和 Opera 中无法正常工作
【发布时间】:2015-10-16 09:14:23
【问题描述】:

需要帮助!!我的页面上有这个,它可以在 chrome、firefox 和 IE 中完美运行。

但是当我使用 Safari 和 Opera 进行检查时,它显示的结果如下所示

这很奇怪,因为它可以在某些设备上正常工作,但不是全部。

我从here 找到了解决方案,我已经删除了margin:0 auto,结果还是一样。我有第二个选择吗?除了更改为偏移量。

点击此处查看完整代码:jsFiddle

【问题讨论】:

标签: jquery html safari position opera


【解决方案1】:

即使我也面临同样的问题。有时浏览器会加载缓存的数据。所以尝试以私人模式重新加载它。它有时可能会起作用。

【讨论】:

  • 我必须确保它完美运行,因为它用于我的客户网站。 :(
【解决方案2】:

我通过在梯形css代码中添加margin-left=1px来解决它,如下所示

#trapezium {
  width:1511px;
  height:1070px;
  z-index:80;
  position:fixed; 
  margin-left: 1px; }

但我不知道为什么margin-left 可以解决我的问题。有人知道吗?

【讨论】:

    【解决方案3】:

    position() 与相对于包含 DOM 元素的位置相关,而不是屏幕上的位置。这种差异可能是由于元素层次在 Webkit 浏览器中呈现方式的差异造成的,而不是由 jQuery 中的错误造成的。

    您必须检查元素层次结构以找出导致问题的 DOM 元素,或者,如果您想相对于窗口边界内元素的位置定位工具提示,请改用 offset()

    注意:- 即使它不起作用,只需将浏览器更新到最新版本。

    【讨论】:

    • 所以你只是复制/粘贴其他链接的答案?! stackoverflow.com/a/5338658/1414562
    • 我只是给你参考这个...而不是粘贴链接
    • 尝试将 jquery 插件安装到您的浏览器中,这些插件将在应用商店中提供,据我所知,插件的名称是“Jquery Enabling Script”...!
    • 我认为将 jquery 插件安装到浏览器不是一个好的解决方案。无法在浏览前通知所有人安装插件。
    猜你喜欢
    • 2011-07-17
    • 1970-01-01
    • 2011-07-25
    • 2016-03-04
    • 1970-01-01
    • 1970-01-01
    • 2015-04-14
    • 2011-11-09
    • 1970-01-01
    相关资源
    最近更新 更多