为啥没有反应

来源:1-25 编程练习

whoisjackie_

2019-03-21 15:01:36

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>闪烁的文字</title>
        <style type="text/css">
            div{
                width:200px;
                height:200px;
                line-height:200px;
                border:2px solid gray;
                text-align:center;
                color:red;
            }
        </style>
    </head>
<body>
    <h3>会闪烁的文字</h3>
        <div id="text"> </div>

        <script type="text/javascript">
            var tex=document.getElementById("text");
var abc=0;
setInterval(function(){
if(abc){
abc=1;
tex.innerHTML="☆☆☆今日特卖☆☆☆";
}
else if(abc=1){
abc=0;
tex.innerHTML="★★★今日特卖★★★";
}
},500);
        </script>
    </body>
</html>


写回答

2回答

慕瓜9188159

2019-03-23

 <script type="text/javascript">

            //补充代码

            var text = document.getElementById('text')

            var bool = 0

            var starChange = function(){

                if(bool){

                    bool = 0

                    text.innerHTML="☆☆☆今日特卖☆☆☆"

                }else{

                    bool = 1

                    text.innerHTML="★★★今日特卖★★★"

                }

            }

            setInterval(starChange,500)


0
hhoisjackie_
h 感谢!已经解决了
h019-03-23
共1条回复

好帮手慕夭夭

2019-03-21

你好同学 ,首先这里有一个语法问题 ,如下

http://img.mukewang.com/climg/5c9338680001986e02490060.jpg

-表示赋值 ,在if判断中 ,应该使用== . 另外 ,代码逻辑有问题 ,  abc初始状态为0  ,在第一个if判断中, 先把它自动转换为布尔类型 , 0返回的是false ,所以if是不执行的 , 当执行第二个if中 ,0也是不等于1的 ,所以也会不执行

http://img.mukewang.com/climg/5c9338bb0001b45207380306.jpg

可以如下修改:

当if条件不成立的时候 ,会默认执行else ,所以else中不需要设置条件 . 第一次abc为0 , 不满足if条件 .默认执行else ,所以此时应该把它变为1才到 ,这样1返回的布尔值是true ,下一次就能执行if语句了

http://img.mukewang.com/climg/5c9344050001d74307890287.jpg

祝学习愉快 ,望采纳 .

0

0 学习 · 40143 问题

查看课程