Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 02.06.2012, 20:31
Новичок на форуме
Отправить личное сообщение для snoop1q Посмотреть профиль Найти все сообщения от snoop1q
 
Регистрация: 02.06.2012
Сообщений: 2

Обработка button
Привет, я делаю виджет для win7 пишу на javascript
Есть такой вопрос у меня есть к примеру две кнопки
<button style="background-color:white">
Выполнено
</button>
<button style="background-color:white">
Не выполнено
</button>

Можно ли сделать что бы когда я нажимал на "Выполнено" начинала светится красным цветом, а "Не выполнено" белым и наоборот
Ответить с цитированием
  #2 (permalink)  
Старый 02.06.2012, 20:39
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

<button style="background-color:white" onclick="this.style.backgroundColor='#f00'; this.nextElementSibling.style.backgroundColor='#fff';">
Выполнено
</button>
<button style="background-color:white" onclick="this.style.backgroundColor='#f00'; this.previousElementSibling.style.backgroundColor='#fff';">
Не выполнено
</button>
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #3 (permalink)  
Старый 02.06.2012, 20:45
Новичок на форуме
Отправить личное сообщение для snoop1q Посмотреть профиль Найти все сообщения от snoop1q
 
Регистрация: 02.06.2012
Сообщений: 2

Сообщение от devote Посмотреть сообщение
<button style="background-color:white" onclick="this.style.backgroundColor='#f00'; this.nextElementSibling.style.backgroundColor='#fff';">
Выполнено
</button>
<button style="background-color:white" onclick="this.style.backgroundColor='#f00'; this.previousElementSibling.style.backgroundColor='#fff';">
Не выполнено
</button>
спасибо, а что нужно добавить что бы когда ещё раз нажимаешь возращалось обратно на белый цвет?
Ответить с цитированием
  #4 (permalink)  
Старый 02.06.2012, 20:52
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от snoop1q
спасибо, а что нужно добавить что бы когда ещё раз нажимаешь возращалось обратно на белый цвет?
<button style="background-color:white" onclick="this._store==1?(this.style.backgroundColor='#fff',this._store=0):(this.style.backgroundColor='#f00',this._store=1); this.nextElementSibling.style.backgroundColor='#fff';this.nextElementSibling._store=0;">
Выполнено
</button>
<button style="background-color:white" onclick="this._store==1?(this.style.backgroundColor='#fff',this._store=0):(this.style.backgroundColor='#f00',this._store=1); this.previousElementSibling.style.backgroundColor='#fff';this.previousElementSibling._store=0;">
Не выполнено
</button>
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #5 (permalink)  
Старый 03.06.2012, 11:53
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

Для произвольного количества элементов

<style>
  button {background: white}
</style>

<div id="myDiv">
  <button>World</button>
  <button>Wide</button>
  <button>Web</button>
</div>

<script>
window.onload = function () {
  var myDiv = document.getElementById('myDiv');
  var firstColor = 'white';
  var secondColor = 'red';
  var cur = myDiv.children[0];

  setBackground = function (element, color) {
    element.style.background = color;
  }

  myDiv.onclick = function (e) {//onclick begin
    e = e || event;
    var target = e.target || e.srcElement;

    if (target.parentNode == myDiv) {

      if (target != cur) {
        setBackground(target, secondColor);
        setBackground (cur, firstColor);
        cur = target;
        cur.flag = 1;
      } else if (target.flag != 1) {
          setBackground(target, secondColor);
          target.flag = 1;
        } else {
          setBackground(target, firstColor);
          target.flag = 0;
        } 

    }

  }//onclick end

}
</script>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что делаю не так? Javascript + Radio button + Input dmonco Элементы интерфейса 3 19.05.2012 16:22
Получение значения из двух групп radio button kristalmen Элементы интерфейса 2 21.11.2011 23:13
Проблема radio button с кроссбраузерностью shkarbatov Javascript под браузер 0 28.07.2011 10:55
Обработка фото сервером. mycoding Оффтопик 0 12.10.2010 22:45
Global, Button. Необходима Помощь. Nazv Общие вопросы Javascript 1 12.12.2008 17:45