javascript - setInterval都会先预执行一遍,才会去全部执行一遍

查看:82
本文介绍了javascript - setInterval都会先预执行一遍,才会去全部执行一遍的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

1、setInterval都会先预执行一遍,才会去全部执行一遍?

2、<!DOCTYPE html>
<html>
<head lang="en">

<meta charset="UTF-8">
<title></title>
<script>
    window.onload = function(){
        var bu = document.getElementsByTagName("button")[0];
        bu.onclick = function(){
            setInterval(
                    function(){
                        alert("aaa")
                        var AA = document.getElementById("aa");
                        var BB = document.getElementById("bb").firstChild;
                        AA.appendChild(BB);
                    }
                    ,3000);
        }
    }
</script>

</head>
<body>
<ul id="aa">

<li>1</li>
<li class="cc">楼下的上来</li>

</ul>
<ul id="bb">

<li>2</li>
<li>楼上的给我下来别上去</li>

</ul>
<button>点击</button>
</body>
</html>

解决方案

我没太懂楼主的意思,不过大概猜一下
应该是firstChlid的问题,第一执行的时候有alert但没有节点的变化,这是因为firstChild的第一个是空文本节点,所以没有效果看到;
具体你可以百度一下 js关于childNodes后去子元素的问题,有详细的解答

这篇关于javascript - setInterval都会先预执行一遍,才会去全部执行一遍的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆