织梦CMS - 轻松建站从此开始!

沙龙国际-沙龙国际娱乐-沙龙国际网上娱乐

当前位置: 主页 > 沙龙国际 >

JavaScript SetTimeout输入参数的问题

时间:2017-07-06 19:20来源:未知 作者:admin 点击:
有一段html的小代码,如下: function init(){ var planet=document.getElementById("greenplanet"); planet.innerHTML="RED ALERT: hit by phaser fire!" setTimeout(planet.setAttribute("class","bluetext"),1000); setTimeout(planet.setAttri

有一段html的小代码,如下:

function init(){
    var planet=document.getElementById("greenplanet");
    planet.innerHTML="RED ALERT: hit by phaser fire!"
    setTimeout(planet.setAttribute("class","bluetext"),1000);
    setTimeout(planet.setAttribute("class","redtext"),2000);
    

然而,这样执行时,会直接将Attribute变成redtext,没有倒计时1000ms(我试过用5000ms,确实没有倒计时),bluetext这一句也没有执行。
我试着将代码改成:

function init2(){
    var planet=document.getElementById("greenplanet");
    planet.innerHTML="RED ALERT: hit by phaser fire!";
    function a(){
        planet.setAttribute("class","bluetext");
    }
    function b(){
        planet.setAttribute("class","redtext");
    }
    setTimeout(a,1000);
    setTimeout(b,2000);
}

就可以了。两个setAttribute分别在倒计时后触发。前后两段代码的区别,就是后一段将setAttribute代码直接封装到一个函数内。可是setTimeOut的第一个参数,不是既可以是函数,也可以是代码段码?

织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容