当我点击一段文字时,此代码会运行。第一个如果有效,但第二个不想执行。
if (music = true) {
music = false;
$('#musicButton').html("Music: Off")
}
if (music = false) {
music = true;
$('#musicButton').html("Music: On")
}
我尝试了if if else,但似乎都没有。
答案 0 :(得分:2)
你应该使用if else语句来减少重复代码。此外,您还要分配音乐而不是测试音乐。在JavaScript中,您必须使用===
运算符来比较两个项目。您甚至不需要===
运算符,因为您正在检查项是否为真,因此您只需将变量封装为()
。
music = true;
$("button").click(function () {
if (music) {
music = false;
$('#musicButton').html("Music: Off")
}
else {
music = true;
$('#musicButton').html("Music: On")
}
}).click();

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="musicButton"></div>
<button>Click Me</button>
&#13;
答案 1 :(得分:1)
请记住,大多数语言的比较都是通过double = ...'x == y'。
完成的使用单个'='
完成分配答案 2 :(得分:1)
=用作赋值运算符。为了比较,您应该使用==或===
if (music === true) {
music = false;
$('#musicButton').html("Music: Off")
}
if (music === false) {
music = true;
$('#musicButton').html("Music: On")
}
if (music == true) {
music = false;
$('#musicButton').html("Music: Off")
}
else if (music == false) {
music = true;
$('#musicButton').html("Music: On")
}
答案 3 :(得分:0)
您应该更改下面的代码,在发生之前将其更改为false,还需要使用===,这样下面的内容可能对您有用:
if (music === true) {
$('#musicButton').html("Music: Off");
music = false;
} else{
$('#musicButton').html("Music: On");
music = true;
}