我想在用戶單擊時切換按鈕的顏色。現在,當用戶點擊按鈕時會瞬間改變顏色,但會立即以毫秒爲單位變回第一種顏色。我正在使用.jsp文件與服務器通信,這些按鈕將信息發送到服務器,當服務器進行通信時,它會刷新頁面。這是否在頁面刷新時重新設置按鈕的樣式?我正在使用類'按鈕'來定義樣式。如何更改(並保持)點擊按鈕的顏色
我的問題是:我該如何無限期地改變按鈕的顏色?
<form action="FirstServlet" method="get">
<div id="TVs">
<%for (int i=1; i<=numTargets; i++) {
<button id="TV<%=i%>" name= "TV<%=i%>" class="button" onClick= "TVbuttonPressed('TV<%=i%>')">
...
function TVbuttonPressed(id){
document.getElementById(id).style.backgroundColor = 0xFFFF00;
}
最終我計劃具有的功能是:
function TVbuttonPressed(id){
if (document.getElementById(id).style.backgroundColor == A)
document.getElementById(id).style.backgroundColor = B
else (document.getElementById(id).style.backgroundColor == B)
document.getElementById(id).style.backgroundColor = A
}
有人能幫忙解釋一下?謝謝。
你爲什麼不只是添加上點擊一類。讓班級申報新的風格。 – Leeish
'style.backgroundColor'會在不同的瀏覽器中返回不同的東西,而且在大多數現代瀏覽器中它會返回類似'rgba(23,143,255,1)'的東西,所以與十六進制顏色比較幾乎總是會失敗。 – adeneo
你可以緩存顏色。然後相應地設置它。我也有一個瘋狂的猜測,比如把href放在按鈕寬度上,它的寬度等於按鈕寬度,然後你將得到:visited {{background} color:red;} – argentum47