如何让首页面中的信息按照某一时间段自动轮换
问题是这样的,
在前台页面中,有一个栏目要
显示5条信息,这五条信息是在
从后台设定的50条信息中挑选出来的,50条信息按照某一标准进行排序,要求
每隔一段时间后,把这5条信息进行轮换。保持内容的不重复。
请问如何按照某一时间间隔
自动实现这一事务逻辑,其目的是节省人工的操作。
这个栏目,目前我使用inc文件来替换的,所以说,如果页面一次性生成后,是否还需要每次在更新的时候,还要用手工来生成页面,这不是我想要的效果,理想的方式就是一切都能自动实现。
不知道是否有好的办法来解决这个问题,先谢谢了,
------解决方案--------------------ajax异步去后台选数据,成功后,在success函数中更细界面 内容,用来显示的地方可以用div,表格等,返回后用js根据div或表格id去更新内部html
------解决方案--------------------setInterval+ajax异步处理,轮换的数据写入到缓存中,读取从缓存中取
------解决方案--------------------
不用管你的inc引入文件的,因为用jq只针对html来操作,你可以把js那段写到</body>标签前面即可:
<script type="text/javascript">
var stateFlag = 0;
$(function () {
getDataList();
setInterval("getDataList()", 60000);//隔一分钟执行一次
});
function getDataList() {
$.ajax({
...
...
}
</script>
</body>
</html>
ajax的请求处理数据的页面一定能通过某个方式获取一个标记参数。我的建议是用cookies来标记,然后cache来存取在你设定时间段内的数据。比如你页面一开始加载时你的栏目要显示5条数据,OK那就把一开始的5条绑定上去(其实总共的50条又不多可以全部写到缓存里面,你筛选一下去偷5条咯,这个你自己需要设计下结构,或者ds.table[n].select(...)什么的。我比较喜欢的做法是,在某个时间点[我写了个server,当然你用timer也是可以的]一次性把更新的50条数据写入到js文件里面,配合jq.cookies.js使用,读取就OK了),然后把一个标记,比如是1写入到cookies里面,一定时间后(你自己设定的)娶到这个标记然后+1再写入到cookie里面,再取另外的5条数据