如何让我的插件每5分钟自动刷新一次?

时间:2014-09-05 作者:Exn

我为仪表板编写了一个带有自定义小部件的插件。它从XML文件中检索信息,并将信息显示到小部件中。XML文件将每隔几分钟左右修改一次。现在,如果用户刷新页面,我的插件工作得很好,它也会抓取新的XML文件并显示新的XML文件,但我希望小部件刷新信息而不必重新加载页面。

我认为这将需要JS/JQuery,但我只是想得到一些建议,以便我能朝着正确的方向前进。

谢谢

1 个回复
SO网友:GoreDefex

在没有“页面加载”的情况下做任何事情都肯定需要Javascript,因为您现在进入了a-Synchronous(AJAX)领域,而JQuery是一个很好的库,可以用于这方面。

其中最简单、最直接的是$.post(...) 方法然后,您可以将此发送和接收AJAX调用附加到使用window.setinterval() 或者您可以只使用JQuery计时器。我所说的shim是指用Javascript编写的一个良好的类,或者只是一组设置为检测浏览器版本,然后使用适当的对象进行实例化的函数。一些旧浏览器不喜欢JQuery或某些Javascript函数。如果您决定使用手动Javascript和XHRObjects,并且自己处理HTTPRequests,我建议您查看哪些浏览器支持什么。

这两种方法都可以工作,但很高兴已经为您完成了类似JQuery的工作,这样您就可以完全考虑完成跨浏览器兼容性以及浏览器版本兼容性方面的代码集。

总而言之,我想它可能是这样的。。。

delay(function() {
    $.post("myXMLfile", function(data) {
        $(\'#xmlContainer\').html(data);
    });
}, 4000);

结束