Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 19.10.2021, 16:43
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,118

Сообщение от voraa
Так наверно должно быть
У Ubivectel там разные селекторы...

Сообщение от Ubivectel
#scolor, .overlayo, #kide_x_s, #KIDE_mensaje_borrar

...
#KIDE_opciones, .overlayo, .KIDE_mostrar
Ответить с цитированием
  #12 (permalink)  
Старый 19.10.2021, 16:48
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,118

Сообщение от Ubivectel
Вроде ведь одно и то же, что не так делаю
Нет. Не одно и то же.
У тебя всякий раз разный набор селекторов
#scolor -> #KIDE_opciones, .overlayo
.overlayo -> .KIDE_mostrar, .overlayo
#kide_x_s, #KIDE_mensaje_borrar -> .overlayo
Ответить с цитированием
  #13 (permalink)  
Старый 19.10.2021, 17:02
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,118

Автор не дает нам шанс проверить...
Предложу такой вариант.
let scolor = document.querySelectorAll('#scolor, .overlayo, #kide_x_s, #KIDE_mensaje_borrar').forEach(el => {
	const a = ['.overlayo']
	if (el.id === 'scolor') a.push('#KIDE_opciones')
	if (el.classList.contains('overlayo')) a.push('.KIDE_mostrar')
	const val = a.join(', ')
	el.onclick = function () {
		document.querySelectorAll(val).forEach(elem => elem.style.display = "none");
	};
})

Последний раз редактировалось ksa, 19.10.2021 в 17:04.
Ответить с цитированием
  #14 (permalink)  
Старый 19.10.2021, 17:07
Профессор
Отправить личное сообщение для Ubivectel Посмотреть профиль Найти все сообщения от Ubivectel
 
Регистрация: 01.12.2020
Сообщений: 166

Тоже не срабатывает, постараюсь более внятно выложить фрагменты кода, это не так просто, поскольку это разные модальные окна и их код раскидан по разнам файлам. Так-то сейчас работает все, но не могу в себе подавить бунт перфекционизма )))))
Ответить с цитированием
  #15 (permalink)  
Старый 19.10.2021, 17:10
Профессор
Отправить личное сообщение для Ubivectel Посмотреть профиль Найти все сообщения от Ubivectel
 
Регистрация: 01.12.2020
Сообщений: 166

Проверить тут: https://noviy-kovcheg.ru/chat этот код закрывает модальные окна "цвет" и при правом клике на ник в окне сообщений
Ответить с цитированием
  #16 (permalink)  
Старый 19.10.2021, 17:13
Профессор
Отправить личное сообщение для Ubivectel Посмотреть профиль Найти все сообщения от Ubivectel
 
Регистрация: 01.12.2020
Сообщений: 166

Сообщение от ksa Посмотреть сообщение
Автор не дает нам шанс проверить...
Предложу такой вариант.
let scolor = document.querySelectorAll('#scolor, .overlayo, #kide_x_s, #KIDE_mensaje_borrar').forEach(el => {
	const a = ['.overlayo']
	if (el.id === 'scolor') a.push('#KIDE_opciones')
	if (el.classList.contains('overlayo')) a.push('.KIDE_mostrar')
	const val = a.join(', ')
	el.onclick = function () {
		document.querySelectorAll(val).forEach(elem => elem.style.display = "none");
	};
})
Ураааа! Заработало! Всем спасибо товарищи, пошел "курить" как именно все работает.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создать код CSS+HTML JamesMorgan Общие вопросы Javascript 2 11.08.2015 12:50
Помогите к js коду, написать html код Modrih Элементы интерфейса 8 16.06.2015 18:08
Как подгрузить код JS динамически? zhurchik Общие вопросы Javascript 22 02.02.2015 14:16
код нe работает в фаирфохе dadli Javascript под браузер 2 28.01.2012 21:18
Помогите код оптимизировать. Suharik Events/DOM/Window 2 27.05.2010 11:59