window.setInterval()不会立即加载div内容并中断ColdFusion sessionTimeout

时间:2016-07-13 18:11:51

标签: javascript jquery coldfusion

在我的网站中,我有<div>rss.cfm加载RSS Feed。下面的代码会在60秒后刷新RSS提要,正如人们所期望的那样。

但是,在最初的60秒过去之前,它最初不会加载<div>。它还会导致我的sessionTimeout中的Application.cfc不再记录某人,因为我认为它正在刷新<div>。 :d

<script type="text/javascript">
    window.setInterval(function(){$('#rssHolder').load('/rss.cfm');}, 60000);
</script>
<div id="rssHolder">RSS Feeds loading...</div>

我在这里阅读了所有文档: https://developer.mozilla.org/en-US/docs/Web/API/WindowTimers/setInterval

我可以在StackOverflow上找到window.setInterval的每个引用。我在Firefox 47中测试了最新的Chrome版本和Safari(没有检查版本)。我正在使用jQuery 2.2.3和Lucee 4.5,如果有帮助的话。

有什么想法吗?在处理初始加载和ColdFusion window.setInterval时,sessionTimeout使用了错误的方法吗?

1 个答案:

答案 0 :(得分:3)

非常简单的修复页面加载问题。创建一个包装load()的函数,并在间隔计时器和页面加载

中调用该函数
function loadFeed(){
 $('#rssHolder').load('/rss.cfm');
}
// interval timed loader
window.setInterval(loadFeed, 60000);
// initialize on page load
$(function(){
  loadFeed();
});

不确定为什么会话会超时