http-equiv和set inverval不同步

时间:2014-05-28 08:33:11

标签: jquery html asp.net refresh

背景:

我正在开发一个asp.net项目,这是一个幻灯片,使用ASPX页面作为幻灯片页面。

此页面在代码隐藏的页面加载过程中以编程方式在标记上添加所有图像,然后由于SetInterval Jquery函数,所有图像都在滑动。

要向幻灯片添加新图像,我们使用表单(在站点的另一页面中)。

为了在使用表单发布新图像时,我希望在循环结束时刷新幻灯片页面。

我做了什么:

我在Jquery函数中将间隔设置为15000 (15秒)。要刷新页面,我使用了元标记的 http-equiv =“refresh”属性。

由于我希望在setInterval循环结束时刷新页面,我将刷新参数(在代码隐藏中)设置为 RefreshTimer = 15 * ImageNumber。

所以,如果我有3张图片,我的页面应每刷新45次,每次显示15秒。

出了什么问题:

我注意到这不能正常工作。页面不会在最后一张图像的最后刷新。

当循环结束时,第一幅图像再次显示约0.5s~1s,然后进行刷新。

问题:

你知道这个过程有什么问题吗?为什么页面不能在适当的时候刷新? 以下是一些代码元素:

Jquery函数:

jQuery(document).ready(function () {
            $(function () {
                setInterval(function () {
                    $(".slide div:first-child").css({ marginTop: function (index) {
                        $(".slide div:first-child").css({ marginTop: 0 }).appendTo(".slide");
                        return index;
                        }
                    });
                verticalAlignCenter();
                }, 15000);
            }); });

Thanx任何建议

1 个答案:

答案 0 :(得分:0)

我使用此功能重新加载我的页面:

setInterval(function () {
                    location.reload();
                }, $("#<%=refreshTime.ClientID%>").val());

$(“#&lt;%= refreshTime.ClientID%&gt;”)。val()只是从页面加载后的代码中获取值的一种方法。

我认为我的问题发生了,因为在页面开始计数(http-equiv =“刷新”)和上面的函数启动之间应该有延迟。