gpt4 book ai didi

javascript - 元素的背景图像的修改频率是否有限制?

转载 作者:数据小太阳 更新时间:2023-10-29 04:21:34 24 4
gpt4 key购买 nike

//  Repaints the progress bar's filled-in amount based on the % of time elapsed for current video.
progressBar.change(function () {
var currentTime = $(this).val();
var totalTime = parseInt($(this).prop('max'), 10);

// Don't divide by 0.
var fill = totalTime !== 0 ? currentTime / totalTime : 0;

// EDIT: Added this check, testing with it now.
if (fill < 0 || fill > 1) throw "Wow this really should not have been " + fill;

var backgroundImage = '-webkit-gradient(linear,left top, right top, from(#ccc), color-stop(' + fill + ',#ccc), color-stop(' + fill + ',rgba(0,0,0,0)), to(rgba(0,0,0,0)))';
$(this).css('background-image', backgroundImage);
});

我正在使用上面的 javascript 随着时间的推移填充进度条,以使用渐变修改其背景图像。

极度间歇性——背景图像完全停止渲染。我在这段代码中放置了日志记录,一切似乎都在正常启动。我没有除以 0,填充也不是 0,但背景图像停止显示。

如果我重新加载 dom 元素——它又开始工作了!所以,我想知道我是否只是在这里做错了什么。也许我不能像这样连续几个小时设置背景图像?

编辑:我将尝试制作一个带有一些日志记录的短视频剪辑来突出显示该问题。重现可能需要一些时间。

  • 我在代码中放置了一个断点,观察到 fill 的值大于 0 且小于 1。在本例中,它的值为 0.6925

  • 在代码中放置一个断点,在该点处中断然后允许执行继续导致进度条的填充重新出现!

EDIT2:这是它发生的视频:http://screencast.com/t/DvzBr06f

最佳答案

没有限制。你使用的是什么浏览器?浏览器缓存可能存在一些问题,因此尽量不要对图像进行过多更改。这是我放在一起的测试,效果很好,FIDDLE和代码:

CSS:

div {
height:25px;
}

HTML:

<div id="pg"></div>

JS:

var counter = 0,
alpha = window.setInterval(function(){
counter++;
if(counter > 60){
window.clearInterval(alpha);
} else {
progressBar("#pg", counter);
}
}, 500),
progressBar = function (elem, val) {
var fill = val / 60;
var backgroundImage = '-webkit-gradient(linear,left top, right top, from(#ccc), color-stop(' + fill + ',#ccc), color-stop(' + fill + ',rgba(0,0,0,0)), to(rgba(0,0,0,0)))';
$(elem).css('background-image', backgroundImage);
};

关于javascript - 元素的背景图像的修改频率是否有限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17865886/

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