2 回答

TA貢獻1770條經驗 獲得超3個贊
您不必在執行 css 函數(例如 linear-gradient)后放置分號
因為,javascript 假定它是其語句的分號,并在那里結束代碼
var darkened=false;
function toggle() {
if (darkened) {
console.log("lightening button");
document.getElementById("scrollbutton").style.backgroundImage = "linear-gradient(rgb(222, 222, 222), rgb(255, 255, 255))";
} else {
console.log("darkening button");
document.getElementById("scrollbutton").style.backgroundImage = "linear-gradient(rgb(99, 99, 99), rgb(166, 166, 166))";
}
darkened = ! darkened;
}
<html>
<body>
<button style="background-image: linear-gradient(rgb(222, 222, 222),rgb(255, 255, 255));" id="scrollbutton" onclick="toggle();"> pressme</button>
</body></html>

TA貢獻1775條經驗 獲得超11個贊
您可能不需要定義變量并更改內聯樣式。您可以使用classList.toggle和分離樣式并將它們添加到新類中
function toggle() {
document.getElementById("scrollbutton").classList.toggle('darkening');
}
.lightening {
background-image: linear-gradient(rgb(222, 222, 222), rgb(255, 255, 255));
}
.darkening {
background-image: linear-gradient(rgb(99, 99, 99), rgb(166, 166, 166))
}
<button class="lightening" id="scrollbutton" onclick="toggle();"> pressme</button>
添加回答
舉報