Javascript 当计时器倒计时时,如何使其刷新/更新文本文件中的文本?
在我的代码中,我在我的站点上有一个文本文件,我逐行阅读它,并将其显示在jquery插件newsTicker上。 另外,我有一个计时器倒计时在这种情况下4分钟后,我不显示计时器,但它倒计时 我希望当计数器/计时器达到0小时0分0秒时,它会以某种方式刷新我网站上的页面,或者以某种方式刷新文本文件读取部分,以便显示文本文件的新内容 我用c语言编写了一个程序,每4分钟更新一次文本文件内容,然后上传到我的网站上。 例如,第一次文本文件内容是:Hello World和我的网站显示Hello World。 4分钟后,文本文件内容为:这是一个测试 现在我希望它显示在jquery插件中:这是一个测试 然后,由于某种原因,计时器应在4分钟后再次启动计数器,现在计时器停止在0Javascript 当计时器倒计时时,如何使其刷新/更新文本文件中的文本?,javascript,jquery,html,css,timer,Javascript,Jquery,Html,Css,Timer,在我的代码中,我在我的站点上有一个文本文件,我逐行阅读它,并将其显示在jquery插件newsTicker上。 另外,我有一个计时器倒计时在这种情况下4分钟后,我不显示计时器,但它倒计时 我希望当计数器/计时器达到0小时0分0秒时,它会以某种方式刷新我网站上的页面,或者以某种方式刷新文本文件读取部分,以便显示文本文件的新内容 我用c语言编写了一个程序,每4分钟更新一次文本文件内容,然后上传到我的网站上。 例如,第一次文本文件内容是:Hello World和我的网站显示Hello World。 4
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="http://risq.github.io/jquery-advanced-news-ticker/assets/js/jquery.newsTicker.js"></script>
<style>
.newsticker {
max-width: 620px;
margin: auto;
}
.newsticker li {
color: #4e4e4e;
background: #F2F2F2;
overflow: hidden;
height: 28px;
padding: 10px;
line-height: 30px;
list-style: none;
font-size: 20px;
text-align: left;
border-bottom: 1px dotted #2c8162;
}
.newsticker li:hover {
background: #FFF;
}
</style>
<script language='JavaScript'>
var count = 300;
var counter = setInterval(timer, 1000); //1000 will run it every 1 second
function timer() {
count = count - 1;
if (count == -1) {
clearInterval(counter);
return;
}
var seconds = count % 60;
var minutes = Math.floor(count / 60);
var hours = Math.floor(minutes / 60);
minutes %= 60;
hours %= 60;
//document.getElementById("timer").innerHTML = hours + " Hours " + minutes + //" Minutes and " + seconds + " Seconds left untill the next news update."; // //watch for spelling
}
$('body').find('.newsticker').remove();//It will clear old data if its present
var file = "http://newsxpressmedia.com/files/theme/test1.txt";
$.get(file, function (txt) {
//var lines = txt.responseText.split("\n");
var lines = txt.split("\n");
$ul = $('<ul class="newsticker" />');
for (var i = 0, len = lines.length; i < len; i+=1) { // step: 3
//save(lines[i]); // not sure what this does
$ul.append('<li>' + lines[i] + '</li>'); //here
//$ul.append('<li>' + lines[i+1] + '</li>');
}
//$ul.appendTo('body').newsTicker({
$ul.appendTo('div.wcustomhtml').newsTicker({
row_height: 48,
max_rows: 5,
speed: 600,
direction: 'up',
duration: 1000,
autostart: 1,
pauseOnHover: 1
});
});
</script>
<br><br><span id="timer"></span><br><br>
不需要使用计时器。查看setTimeout函数:
我想是奥列拉夫。我不希望我的网站的访问者每4分钟看到一次文本变得清晰或类似的内容。我希望它是平滑的保持滚动,因为它现在是,如果有新的内容,它将刚刚进入,并将滚动与其他行已经滚动。啊,它的工作。但是有没有办法避免10秒后的清除呢?我的意思是,每10秒,整个文本就会消失一秒。也许有办法更新它而不让它消失?它看起来每10秒闪烁一次我把它改了10秒来检查测试的更新。而且每4分钟它都会像那样消失。不知何故,我想替换或删除这一行:$'body'.find'.newsticker'.remove;每10秒或4分钟这一行将清除jquery newsTicker中的所有文本。如果是10秒,它看起来会闪烁,也会是4分钟,它将清除所有不好的内容。不管怎样,是不是每次都要清除所有新文本,这样它就会进入滚动循环并替换已经存在的旧文本?类似的。删除$body.find.newsticker.remove;您必须修改生成test1.txt的脚本,如下所示:1使用json格式2在javascript函数make date comparison中使用date 3只添加新行示例:[{timestamp:1399446201,text:My news 1},{date:timestamp,text:My news 2}]。对于每次执行updatecker,您都会保存最后一个时间戳,以便在下次执行时可以识别新行。ArGh您能给我看一下完整的解决方案吗?我甚至还不知道如何使json格式的文本文件。我试着问:
<script language='JavaScript'>
function updateTicker() {
$('body').find('.newsticker').remove();//It will clear old data if its present
var file = "http://newsxpressmedia.com/files/theme/test1.txt";
$.get(file, function (txt) {
//var lines = txt.responseText.split("\n");
var lines = txt.split("\n");
$ul = $('<ul class="newsticker" />');
for (var i = 0, len = lines.length; i < len; i+=1) { // step: 3
//save(lines[i]); // not sure what this does
$ul.append('<li>' + lines[i] + '</li>'); //here
//$ul.append('<li>' + lines[i+1] + '</li>');
}
//$ul.appendTo('body').newsTicker({
$ul.appendTo('div.wcustomhtml').newsTicker({
row_height: 48,
max_rows: 5,
speed: 600,
direction: 'up',
duration: 1000,
autostart: 1,
pauseOnHover: 1
});
});
// 4 minutes in millisecondes
setTimeout(updateTicker, 240000);
}
updateTicker();
</script>