简体   繁体   English

如何每隔30秒刷新一次div?

[英]How to refresh div every 30 seconds?

I have a script which displays a cookie value throw document.write. 我有一个脚本显示cookie值throw document.write。

How can I refresh the script- update it every 30 seconds? 如何刷新脚本 - 每30秒更新一次?

Or, if it's imposible, to get cookie value again. 或者,如果它是不可能的,再次获得cookie值。 value = GetCookie('VisitorName'); value = GetCookie('VisitorName');

or, put it in iframe and reload the iframe scr. 或者,将其放入iframe并重新加载iframe scr。

Code is below: 代码如下:

    var expDays = 30;
    var exp = new Date();
    exp.setTime(exp.getTime() + (expDays*24*60*60*1000));

    function Who(info) {
        var VisitorName = GetCookie('VisitorName')

        if (VisitorName == null) {
            VisitorName = "Dear visitor";
            SetCookie ('VisitorName', VisitorName, exp);
       }

        return VisitorName;
    }

    function set() { 
        VisitorName = prompt("");
        SetCookie ('VisitorName', VisitorName, exp);
    }

    function getCookieVal (offset) {
        var endstr = document.cookie.indexOf (";", offset);

        if (endstr == -1)
            endstr = document.cookie.length;

       return unescape(document.cookie.substring(offset, endstr));
    }

    function GetCookie (name) {
        var arg = name + "=";
        var alen = arg.length;
        var clen = document.cookie.length;
        var i = 0;

        while (i < clen) {
            var j = i + alen;
            if (document.cookie.substring(i, j) == arg)
        return getCookieVal (j);
            i = document.cookie.indexOf(" ", i) + 1;
            if (i == 0)
                 break;
        }   

        return null;
   }

    function SetCookie (name, value) {
        var argv = SetCookie.arguments;
        var argc = SetCookie.arguments.length;
        var expires = (argc>2) ? argv[2] : null;
        var path = (argc >3) ? argv[3] : null;
        var domain = (argc >4) ? argv[4] : null;
        var secure = (argc >5) ? argv[5] : false;
        document.cookie = name + "=" + escape (value) +
            ((expires == null) ? "" : (";expires=" + expires.toGMTString())) +
            ((path == null) ? "" : (";path=" + path)) +
            ((domain == null) ? "" : (";domain=" + domain)) +
            ((secure == true) ? ";secure" : "");
    }

    function DeleteCookie (name) {
        var exp = new Date();
        exp.setTime (exp.getTime() - 1);

        var cval = GetCookie (name);
        document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString();
    }

    document.write("" + Who() + ",")

I think you want the setTimeout and setInterval functions here . 我想你想要setTimeoutsetInterval 函数

function myFunc() {
  alert('Hi')
}
setTimeout(myFunc, 30000) // 1000 ms = 1 second

So I'm not sure what function you want repeated every 30 seconds but it may look something like this: 所以我不确定你想要每30秒重复一次的功能,但它可能看起来像这样:

function MyTimerFunction() {
  document.write("" + Who() + ",")
}
MyTimerFunction(); // runs MyTimerFunction immediately
setInterval(MyTimerFunction, 5000) // run MyTimerFunction it every 5 seconds

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM