使用Opera中的jquery将容器宽度更改为32767以上

时间:2009-01-03 13:16:01

标签: javascript jquery width opera

我想用jquery创建一个迷你时间轴,并且这个时间轴的宽度超过32767像素。当我在Opera中用jquery $(".timelinecontainer").width(32767);更改它时不会改变它,但在其他浏览器中它可以工作。

你能给我一些关于让它在Opera工作的建议吗?

7 个答案:

答案 0 :(得分:4)

我怀疑Opera将窗口宽度保持为短,因此无法处理大于32767的值。你应该改变你的方法并缩放时间轴以适应当前窗口,然后给予放大的能力在它的一部分上。我认为你的界面看起来会更好看。您似乎正在这样做,用户将不得不进行大量滚动来查看时间轴,并且无法完整地看到它。

答案 1 :(得分:3)

我确信我会因为这样说而受到抨击但是 - 你可以忽略Opera。

如果您喜欢其他浏览器(IE,FF,Safari / Chrome)中的内容,那么我会说您已经覆盖了99%的基数。

当然,您可能想要提交针对Opera的错误。 (虽然我猜它可能是jquery - 它可能有不同的Opera代码路径)。如果您可以创建一个简单的HTML页面来重现问题,那么您就知道了。然后,将其附加到错误报告中。

答案 2 :(得分:1)

这是一个非常古老的Opera bug,由于某些原因它们无法解决。 Opera仅在某些地区流行,开发人员忽略了这个漏洞。

没有自动解决方案。作为一种快速解决方案,您可以在脚本中检测Web浏览器并限制Opera的宽度。举个例子 - 在Opera中滚动this guitar tab到结尾。

答案 3 :(得分:1)

我可以确认这确实是当前Opera版本中的一个错误。好消息是我们正在努力修复它(我为Opera工作,所以我知道那里发生了什么:)),所以在不久的将来你的脚本应该按照你的预期开始工作。

我实际上建议如果上面第一个答案的解决方法太难实现,你应该忽略这个问题并等待修复它的Opera升级。

答案 4 :(得分:1)

这是一个错误,已在http://my.opera.com/desktopteam

提供的Opera 12 pre-alpha中得到修复

答案 5 :(得分:0)

这绝对是Opera的一个错误。

巧合的是,我昨天才第一次看到它。在我的情况下,我有一个带有width:9999em的内部容器和一个使用overflow:hiddenscrollLeft()创建旋转木马的外部容器。在Opera中,scrollLeft()停止响应该宽度。

提交Opera的错误:https://bugs.opera.com/wizard/

答案 6 :(得分:0)

对我来说听起来像是一个Opera bug。

为什么不看看Simile的时间轴项目(http://simile.mit.edu/timeline/),看看他们是如何做到的?