2016-07-16 5 views
-1

hi Я написал код javascript, чтобы изменить цвет кнопки при нажатии, и он отлично работает (первый цвет белый, и когда я нажимаю на него, он превращается в зеленый). Теперь я есть проблема
, когда я нажимаю на кнопку, и цвет меняется на зеленый, если после этого я снова открою ту же страницу или перезагрузим ее, цвет снова превратится в белый, и я не хочу этого. любые идеи благодаря Как избежать изменения цвета кнопок после обновления страницы

<!DOCTYPE html> 
 
<html> 
 
<head> 
 

 
<script> 
 
    var count = 1; 
 
    function setColor(btn, color) { 
 
     var property = document.getElementById(btn); 
 
     if (count == 0) { 
 
      property.style.backgroundColor = "#FFFFFF" 
 
      count = 1;   
 
     } 
 
     else { 
 
      property.style.backgroundColor = "#7FFF00" 
 
      count = 0; 
 
     } 
 
    } 
 
</script> 
 
</head> 
 

 
<body> 
 

 
<input type="button" id="button" value = "button" style= "color:white" onclick="setColor('button', '#101010')";/> 
 

 
</body> 
 
</html>

+0

Вы только что закрепили кнопкой, просто нажав на эту кнопку, это не значит, что ее статус сохраняется в браузере. Если вы хотите сохранить этот статус, вам нужно добавить файл cookie для того же ... –

+0

Это базовая концепция веб-разработки ... –

+0

благодарим вас за ответ – Malekian

ответ

0

Все объекты JavaScript очищаются когда страница изменяется/перезагружается/...

Скорее всего, вы хотите взглянуть на печенье (хранить данные в браузере и читать назад).

+0

Да, вы правы. .. –

+1

Да или с помощью [API веб-хранилища] (https://developer.mozilla.org/en-US/docs/Web/API/Web_Storage_API/Using_the_Web_Storage_API). Или сохраните его на стороне сервера ... – o4ohel

+0

Благодарим вас за ответ – Malekian

1

Попробуйте использовать localStorage. Что-то вроде этого:

 var startColor="#FFFFFF";//default color on first visit 
     if (localStorage.startColor)startColor=localStorage.startColor; //if page has been visited before then this color 

function setColor(btn, color) { 
    var property = document.getElementById(btn); 
    if (count == 0) { 
     property.style.backgroundColor = startColor; 
     count = 1;  
     localStorage.startColor= startColor; 
    } 
    else { 
     property.style.backgroundColor = "#7FFF00"; 
     localStorage.startColor= "#7FFF00"; 
     count = 0; 
    } 
} 
+0

Я не играл с вашим btn! – grateful

+0

Извините за мой последний вопрос, это была моя ошибка. Я редактирую свой код, но его цвет совсем не меняется, когда я нажимаю – Malekian

+0

. Эй, я мог бы убрать ваш код, мой собственный код работал нормально, но когда я заменил ваш код вместо моего кода javascript, он не меняет цвет кнопки на клике. thank u – Malekian

Смежные вопросы