search

Home  >  Q&A  >  body text

javascript - 求解读这段JS代码

var c, _ = Function;
    with( o = document.getElementById("welcome")) {
        innerHTML += innerHTML;
        onmouseover = _("c=1");
        onmouseout = _("c=0");
    }( F = _("if(#%27||!c)#++,#%=o.scrollHeight>>1;setTimeout(F,#%27?10:2000);".replace(/#/g, "o.scrollTop")))(); 

求高人解读以上代码,谢谢

PHP中文网PHP中文网2897 days ago450

reply all(2)I'll reply

  • 天蓬老师

    天蓬老师2017-04-10 14:47:35

    var c,o = document.getElementById("welcome");
    o.innerHTML += o.innerHTML;
    o.onmouseover = function () {
        c=1;
    }
    o.onmouseout = function () {
        c=0;
    }
    function F() {
        if (o.scrollTop % 27 || !c) o.scrollTop++, o.scrollTop %= o.scrollHeight >> 1;
        setTimeout(F, o.scrollTop % 27 ? 10 : 2000);
    }
    F();
    

    改成这样 就看的懂了吧,

    用with 真不是什么好习惯;

    程序的大致意思 就是 控制 welcome 这个元素的scrollTop

    reply
    0
  • 阿神

    阿神2017-04-10 14:47:35

    1.先去掉_,转义特殊字符
    var c, _ = Function;
    with( o = document.getElementById("welcome")) {
    innerHTML += innerHTML;
    onmouseover = function(){c=1;};
    onmouseout = function(){c=0;};
    }( F =function(){if(o.scrollTop'||!c)o.scrollTop++,o.scrollTop%=o.scrollHeight>>1;setTimeout(F,o.scrollTop'?10:2000);})();

    reply
    0
  • Cancelreply