【问题标题】:stellar.js - fine in JSFiddle but jerky locally?stellar.js - 在 JSFiddle 中很好但在本地很生涩?
【发布时间】:2014-01-14 10:14:03
【问题描述】:

我刚刚开始使用stellar.js(Parallax jQuery 库),它看起来很容易使用,但是当你用鼠标滚轮滚动时它真的很生涩/跳跃(当你手动拖动浏览器滚动条时更少. 奇怪的是,uploaded to JSFiddle 的时候非常流畅。

之前有没有人遇到过这个问题,并且知道查看我的代码的可能原因是什么?请随时从JSFiddle 下载代码并在本地重新创建以查看您是否遇到相同的问题,或者如果您在我的 Fiddle 上发现任何明显的问题,我们将不胜感激。

供参考,这个问题出现在Chrome(这里是32版)中。

CSS

body { background: url(https://www.google.co.uk/images/srpr/logo11w.png) no-repeat; background-size: 100% ; }

    section.one { position: relative; border-bottom: 5px solid #000; }
    .one .div1 { background: #ccc; width: 200px; height:300px; position: absolute; top: 200px; overflow: hidden; }
    .one .div2 { background: #eee; width: 200px; height:200px; position: absolute; top: 100px; left: 100px; }
    .one .div3 { background: #aaa; width: 200px; height:200px; position: absolute; top: 100px; left: 150px; }

    section.two { position: relative; border-bottom: 5px solid #000; overflow: hidden; }
    .two .div1 { background: #ccc; width: 200px; height:300px; position: absolute; top: 200px; }
    .two .div2 { background: #eee; width: 200px; height:200px; position: absolute; top: 100px; left: 100px; }
    .two .div3 { background: #aaa; width: 200px; height:200px; position: absolute; top: 100px; left: 150px; }

JavaScript/jQuery

$(document).ready(function(){
    $.stellar()
});

HTML

<body data-stellar-background-ratio="0.1">
<section class="one">
    <div class="div1" data-stellar-ratio="1"></div>
    <div class="div2" data-stellar-ratio=".5"></div>
    <div class="div3" data-stellar-ratio=".3"></div>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
</section>
<section class="two">
    <div class="div1" data-stellar-ratio="1"></div>
    <div class="div2" data-stellar-ratio=".5"></div>
    <div class="div3" data-stellar-ratio=".3"></div>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
    <p>&nbsp;</p>
</section>

</body>

【问题讨论】:

  • 我有类似的背景生涩问题,但仅限于 IE (link)

标签: jquery html css jsfiddle stellar.js


【解决方案1】:

一个月前我遇到了这个问题。我认为在 JSfiddle 中没问题,因为渲染窗口很小,而且它有一个简单的 html 代码。

由于我正在处理的项目需要非常流畅/速度与繁重的 HTML 结构和大量 CSS 动画,我必须使用 jQuery 从头开始​​实现这种效果,只需使用简单的 $(window).scroll() 并配置 @987654324 @我的元素的属性(位置:绝对)。

【讨论】:

  • 奇怪的是,当在 JSFiddle 中全屏查看结果窗口时,它也非常流畅 - jsfiddle.net/f3dku/2/embedded/result。由于项目的复杂性和时间(或缺乏!),我更喜欢使用类似 stellar.js 的东西。如果涉及到它,我可以手动完成所有操作,但随着复杂性的增加,stellar 将使事情变得更加容易。
  • 在我的电脑 (Win/Chrome) 上跳动而且不是很流畅。
  • 猜猜它取决于 PC 规格,但无论浏览器大小如何,使用 JSFiddle 仍然比在本地查看时更流畅(我在这里使用的是非常高规格的计算机,它仍然很生涩!)。 stellar.js 网站有大量的 div,但仍然非常流畅。我只有几个 div 和地雷 :(
  • 我的项目有大量的 div / 元素可以滚动,大 img 作为背景。恒星无法完成这项工作。尝试上传您的本地副本,看看它是如何呈现的?
  • 已上传代码 (wickywills.com/misc/stellar/index.html) - 即使浏览器窗口缩小,仍然不稳定。鉴于 stellar.js 网站运行得非常顺利,这显然是我做错了——但还没有弄清楚是什么!!
【解决方案2】:

不知道是否仍然打开但可能会有所帮助:添加:

background-attachment:fixed

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-19
    • 1970-01-01
    • 2017-10-04
    • 1970-01-01
    • 2018-07-09
    • 1970-01-01
    相关资源
    最近更新 更多