|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
||||||||||||||||
Неправильно определяется класс24.09.2019, 14:54. Показов 1073. Ответов 10
Метки нет (Все метки)
Вот такая штука
Хочу по клику менять фон элемента.
Но при следующем клике по тому же элементу вход происходит в обработчик того класса, который был изначально. То есть если кликаю на "Солнце", alert говорит "Sel Солнце" в инспекторе становится class="unsel", цвет белый, все Ок. Но при следующем клике alert опять говорит "Sel Солнце" и ничего не меняется. То есть используется изначальное значение класса. В чем может быть закавыка? Все глаза просмотрел, ничего не понимаю. Вещь-то как бы простейшая...
0
|
||||||||||||||||
| 24.09.2019, 14:54 | |
|
Ответы с готовыми решениями:
10
Неправильно определяется количество страниц paginate.parts size HDD определяется в BIOS но не запускается и неправильно определяется объем диска Неправильно определяется флешка |
|
1786 / 1036 / 445
Регистрация: 12.05.2016
Сообщений: 2,550
|
|||||||||||
| 24.09.2019, 15:17 | |||||||||||
|
Байт, $(".unsel") получает элементы с классом unsel и навешивает обработчики. Нужно немного изменить логику, добавить како-йто общий класс.
1
|
|||||||||||
|
the hardway first
2475 / 1847 / 910
Регистрация: 05.06.2015
Сообщений: 3,610
|
||||||
| 24.09.2019, 15:29 | ||||||
|
"Закавыка" в том, что обработчики событий назначаются на элементы существующие в документе в момент их (обработчиков) определения - в вашем примере смысл таков:
.sel и добавлять .unsel. Аналогично с элементами "Луна" и "Меркурий". Скрипт завершен, всем обработчики назначены, больше никого искать в документе не будем.Сразу находите нужные элементы и реализуйте логику в самом обработчике клика
2
|
||||||
|
1786 / 1036 / 445
Регистрация: 12.05.2016
Сообщений: 2,550
|
||||||
| 24.09.2019, 15:29 | ||||||
|
Еще пишут, что так должно работать
1
|
||||||
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
||||
| 24.09.2019, 16:26 [ТС] | ||||
|
Да, мне еще учиться и учиться... Добавлено через 23 минуты Добавлено через 5 минут ![]() Мы же класс у "Солнца" заменили на unsel Впрочем, работает - и слава Богу!
0
|
||||
|
the hardway first
2475 / 1847 / 910
Регистрация: 05.06.2015
Сообщений: 3,610
|
|||||||||
| 24.09.2019, 16:34 | |||||||||
|
Класс заменили, но в момент, когда вы вешали обработчик клика на элементы документа, этот элемент не входил в набор с классом unsel.unselДа, можно делегировать, но зачем?
1
|
|||||||||
|
1786 / 1036 / 445
Регистрация: 12.05.2016
Сообщений: 2,550
|
||||||
| 24.09.2019, 17:45 | ||||||
|
Байт, может, в императивном стиле будет наглядней
1
|
||||||
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
||
| 24.09.2019, 22:27 [ТС] | ||
|
То есть в моей дурной голове выстраивается такая логика. По "документ готов" к функции $('.sel').click составляется список (массив, коллекцию, таблицу) элементов ДОМа, к которым эта функция будет применяться. И изменения, происходящие в ДОМе, в этой таблице не отражаются. Так? А как же тогда заставить их отражаться? Как это делает toggleClass? В общем, мне очень интересны механизмы. Не "сделай так, и все будет хорошо", а что и когда происходит на уровне данных. Внутренняя логика языка. И пока я ее не пойму, я буду барахтаться, как это самое в проруби. Вот тут Годная книга за JavaScript есть мой писк. И хотелось увидеть именно механизмы. Данные. Без излишней детализации. Как это реализуется, последовательно или кэшем - дело для понимания десятое.
0
|
||
|
1786 / 1036 / 445
Регистрация: 12.05.2016
Сообщений: 2,550
|
||||||||||||||
| 25.09.2019, 02:18 | ||||||||||||||
![]()
1
|
||||||||||||||
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
||
| 25.09.2019, 10:28 [ТС] | ||
|
А остальное таки нет. Туповат стал, увы ![]() Ладно, может быть само как-то уложится....
0
|
||
|
Диссидент
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
|
|
| 08.10.2019, 11:51 [ТС] | |
|
Однако удалось разобраться и понять. Дело в том, что привязка события к элементу - статическая. Привязалась - все - привязана. Никакие последующие изменения в этом элементе эту привязку не отменяют и новых не создают.
Ура! ![]() Всем, принявшим участие в обсуждении - большое спасибо! Добавлено через 4 минуты Сейчас перечитал топик, да мне же об этом несколько раз говорили! А у меня в башке совсем друга парадигма сидела, другой механизм. Думалось, что должны отслеживаться все изменения. Ясен пень, что это слишком дорого было бы. Еще раз прошу прощения за свою глупость...
0
|
|
| 08.10.2019, 11:51 | |
|
Помогаю со студенческими работами здесь
11
Неправильно определяется get_global_id на OpenCL? Неправильно определяется разрешение экрана Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|