gpt4 book ai didi

javascript - Firefox 中的 skrollr 背景图像闪烁

转载 作者:行者123 更新时间:2023-11-28 12:31:42 28 4
gpt4 key购买 nike

我有一个带有背景图片的 div。使用 skrollr,我正在更改背景图像,得到某种动画(纸飞机折叠起来)。为了防止插值,我使用了自定义缓动函数:

easeInt: function(p) {
return Math.floor(p * 13) / 13;
}

我的动画看起来像这样(skrollr-stylesheet):

3528 {
background-image[easeInt]: url("img/plane14/plane0.png");
}

3928 {
background-image[easeInt]: url("img/plane14/plane13.png");
}

当动画运行时,背景图像会在下一张出现之前消失一会,导致动画闪烁。此问题仅出现在 Firefox 中,不会出现在 Chrome 或 Safari 中。我正在使用

预加载所有图像
var img1 = new Image(); img1.src = 'img/plane14/plane1.png';

使用 HTML 预加载所有图像也无法完成工作:

<div style="width:100px; height:100px; position: fixed; top: -100px; left: -100px;">
<!-- loading all images as <img src="imageurl.png"> -->
</div>

我还尝试使用 skrollr 的防止插值选项。已经检查了我的缓动函数,它应该可以正常工作。在 Firebug 中,我可以观察到背景图像正在根据需要进行更改。我仍然感到这种闪烁。

最佳答案

我不熟悉 Skrollr,但我一直在研究类似的情况,图像在交换时会闪烁。

我对该问题的理解是,Firefox 在第一次查看图像之前不会对图像进行解码,而您看到的闪烁是在解码准备就绪之前试图显示的图像。加载图像与解码是分开的,因此预加载对 Firefox 的这个问题没有影响。

如果您在 Firefox 中转到 about:config,可以更改设置 image.decode-immediately.enabled,这应该可以在本地解决问题。不幸的是,我还没有找到解决这个问题的更好方法。

我发现了几个我认为与此问题相关的 bugzilla 案例:

https://bugzilla.mozilla.org/show_bug.cgi?id=1149893

https://bugzilla.mozilla.org/show_bug.cgi?id=1158440

关于javascript - Firefox 中的 skrollr 背景图像闪烁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28543320/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com