Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: outline для кнопочки в фокусе посредством JS

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Romeo4755
Отправлено: 01 Мая, 2016 - 18:49:49
Post Id


Новичок


Покинул форум
Сообщений всего: 16
Дата рег-ции: Окт. 2015  


Помог: 0 раз(а)




Здравствуйте. Помогите мне, пожалуйста.
У меня есть кнопочки, которые можно двигать по экрану. При нажатии на каждую, вокруг нее получается симпатичная голубенькая тонкая обводка, которая держится, пока не нажмешь на другую кнопку - и это удобно, потому что пользователь видит, какую кнопку передвигал последней. (это грамматический тест).
Но есть еще групповые операции, при которых при удерживании Шифта вокруг объединяемых кнопок появляется толстая розовая обводка:
CODE (javascript):
скопировать код в буфер обмена
  1. document.getElementById (elemID).style.outline= "3px solid #FF00FF";

Это тоже удобно, можно видеть, какие кнопки в группе.

Проблема вот в чем - когда группа уже не нужна, толстую розовую обводку нужно убрать, а я умею ее убирать только так:
CODE (javascript):
скопировать код в буфер обмена
  1. ...outline = "none";

В этом случае при дальнейшей работы с этими кнопками тоненькая голубая обводка вокруг них в активном состоянии больше не появляется.
Вы не знаете, как мне ее вернуть? Как на JS приписать свойство элементу, ПРЕБЫВАЮЩЕМУ в активном состоянии? (Просто по по нажатии мышки или onfocus в HTML не годится, потому что тогда обводка больше не убирается, а надо, чтобы обведен был только активный элемент).

Через несколько часов у меня такое решение:
При наборе группы панелек с зажатым шифтом:
CODE (javascript):
скопировать код в буфер обмена
  1.   document.getElementById (elemID).style.outline= "3px solid #FF00FF";
  2.   document.getElementById (elemID).onblur = function () {this.style.outline= "3px solid #FF00FF";}
  3.   document.getElementById (elemID).onfocus= function () {this.style.outline= "3px solid #FF00FF";}


При разгруппировании:
CODE (javascript):
скопировать код в буфер обмена
  1.       for (var inni=0; inni < lukoshko.length; inni++)
  2.           {
  3.             document.getElementById("wordpanel"+lukoshko[inni]).style.outline = "none";
  4.             document.getElementById("wordpanel"+lukoshko[inni]).onblur = function () {this.style.outline= "none";}
  5.             document.getElementById("wordpanel"+lukoshko[inni]).onfocus = function () {this.style.outline= "2px solid deepskyblue";}
  6.   }

lukoshko - это массив, в который собраны номера панелей, находящихся в текущей группе

(Отредактировано автором: 01 Мая, 2016 - 23:09:33)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« JavaScript & VBScript »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB