为啥没有反应
来源: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)
好帮手慕夭夭
2019-03-21
你好同学 ,首先这里有一个语法问题 ,如下

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

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

祝学习愉快 ,望采纳 .
相似问题