屏幕刷新jquery工作在pc上,而不是在服务器上

Screen Refresh jquery works on pc and not on server

本文关键字:服务器 pc 刷新 jquery 工作 屏幕      更新时间:2023-09-26

我有下面的jquery脚本,它允许用户选择一个复选框来打开和关闭浏览器刷新,并指定刷新的持续时间(以秒为单位)。我将详细信息保存在cookies中。

我一直想弄清楚为什么它在我的电脑上工作,而不是在Linux centOS服务器上。

我错过了一些明显的,但找不到一个解决方案-谁能看到我做错了什么?

function saveValue(){
    Cookies.set("refreshScreen", $('#refreshScreen').is(':checked'));
    Cookies.set("seconds", $('#seconds').val() ? $('#seconds').val() : 0);
    setReload();
}
$(document).ready(function (){
    setReload();
});
function setReload(){
    val = Cookies.get("refreshScreen")
    if(val=='true')
        chk = true;
    else
        chk = false;
    seconds = Number (Cookies.get("seconds") ? Cookies.get("seconds") : 30 );
    $('#refreshScreen').attr('checked',chk);
    $('#seconds').val(seconds);
    if(chk){
        setTimeout(function () { location.reload(1); } , seconds*1000);
    }
}
</script>

将变量声明为局部变量。问题是您有一个具有id="seconds"的元素,并且它被用作全局变量seconds的值。

function setReload(){
    var val = Cookies.get("refreshScreen") == 'true'
    var seconds = Number (Cookies.get("seconds") ? Cookies.get("seconds") : 30 );
    $('#refreshScreen').attr('checked',chk);
    $('#seconds').val(seconds);
    if(chk){
        setTimeout(function () { location.reload(1); } , seconds*1000);
    }
}