如何修复Revolution-slider中卡住的JavaScript计数器

时间:2019-01-06 11:24:22

标签: javascript revolution-slider

我尝试在我的revslider的第7张幻灯片中添加一个计数器(在该论坛上找到)。

http://www.protheine.com/odcnew/

Counter screen

该计数器在普通的html页面上可在本地工作,但是一旦添加到revslider中,它只会显示结果并且不进行计数。

将HTML插入为滑块中的文本:

var START_DATE = new Date("January 6, 2019 11:40:00"); // put in the starting date here
var INTERVAL = 5; // in seconds
var INCREMENT = 2; // increase per tick
var START_VALUE = 1400000; // initial value when it's the start date
   var count = 0;
    
window.onload = function() {
var msInterval = INTERVAL * 1000;
var now = new Date();
count = parseInt((now - START_DATE) / msInterval) * INCREMENT + START_VALUE;
document.getElementById('counter').innerHTML = count;
setInterval("count += INCREMENT; document.getElementById('counter').innerHTML = count;", msInterval);
}
<div id="counter"></div>

是不是可以像它应该做的那样移动它?

非常感谢

1 个答案:

答案 0 :(得分:0)

看起来您的页面上出现js错误,提示count不可用,这可能是因为您使用的是奇怪的setInterval语法,其中string作为第一个参数。 如果第一个参数是字符串,那么它将在全局上下文中求值,在该全局上下文中您无权使用count变量,因为它是用onload处理程序包装的。

让我们尝试将其更改为:

setInterval(function(){
    count += INCREMENT;
    document.getElementById('counter').innerHTML = count;
}, msInterval);