javascript – 每15秒读取一次文本文件的内容

我正在一个音乐网站上工作:
我在服务器上有一个文本文件,其中包含当前播放歌曲的名称.
我想每隔15秒读取一次文本文件,并更改我网站上显示文字,
没有刷新.

现在,使用一点点jQuery和javascript,我实际上已经达到了第一次读取和显示文件的程度,但它不会刷新.我尝试过各种setInterval函数,但是对于我的生活,我不能让这部分工作.
任何帮助将不胜感激.

这是我有的:

<script type="text/javascript"> 
$(document).ready(function() {
    jQuery.get('http://www.XXXXX.com/Nowplaying/NowPlaying.txt',function(data) {
        var myvar = data;
        var parts = myvar.split(/\n/);
        var songtitle = parts[0];
        var songartist = parts[1];
        var songalbum = parts[2];
        var songtime = parts[3];
        $('#songtitleholder').html(songtitle);
        $('#songartistholder').html(songartist);
        $('#songalbumholder').html(songalbum);
    });
});​
</script>

解决方法

您可以在函数中重复执行要执行的代码,并在 setTimeout中传递该函数.setTimeout的第二个参数将以毫秒为单位.

在这里使用setTimeout IMO在这里更合适,因为它将排除发送请求和接收响应所花费的时间.它将在收到响应后每5秒发送一次请求.

<script type="text/javascript"> 

 $(document).ready(function() {

    function functionToLoadFile(){
      jQuery.get('http://www.XXXXX.com/Nowplaying/NowPlaying.txt',function(data) {
       var myvar = data;
       var parts = myvar.split(/\n/);
       var songtitle = parts[0];
       var songartist = parts[1];
       var songalbum = parts[2];
       var songtime = parts[3];

       $('#songtitleholder').html(songtitle);
       $('#songartistholder').html(songartist);
       $('#songalbumholder').html(songalbum);
       setTimeout(functionToLoadFile,5000);
    });
    }

    setTimeout(functionToLoadFile,10);
});

</script>

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...