Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Связать два события (https://javascript.ru/forum/misc/81900-svyazat-dva-sobytiya.html)

Ubivectel 11.02.2021 13:03

Связать два события
 
Здравствуйте товарищи, продолжаем мучить чат. Итак имеем вот такой юзерлист:

<div class="ulcontent ulhidden" id="KIDE_usuarios_top">
<span class="title_user">онлайн</span>
	<div id="KIDE_usuarios"></div>
	<?php if($this->show_privados) $this->display('privados'); ?>
</div>


Он умеет сворачиваться по клику на соответствующий элемент, вот скрипт, который добавляет ему класс который его прячет:

const ulnone = document.querySelector(".ulnone");
	const ulcontent = document.querySelector(".ulcontent");

	ulnone.addEventListener("click", ulnoneClick);

	function ulnoneClick()
	{
		console.log(ulcontent.classList);

		if (ulcontent.classList.contains("ulhidden")) {
			ulnone.textContent = "<<<";
		} else {
			ulnone.textContent = ">>>";
		}

		ulcontent.classList.toggle("ulhidden");
	}
	ulnone.click();


В него же выводятся оповещения о новых, личных сообщениях, выводит их это:

kide.privados.aviso = function (alias) {
	kide.$('KIDE_privados_avatar_' + alias).classList.add('red_privados');
	
};


Сейчас если юзерлист имеет класс ulhidden оповещений соответственно не видно. Очень хочется, что бы новое сообщение обращалось ко второму скрипту, и удаляло класс ulhidden если он присутствует. Не знаю как более внятно изложить :)

рони 11.02.2021 17:30

Ubivectel,
kide.privados.aviso = function (alias) {
    kide.$('KIDE_privados_avatar_' + alias).classList.add('red_privados');
    document.querySelector(".ulnone").textContent = '<<<';
    document.querySelector(".ulcontent").classList.remove('ulhidden')
};

Ubivectel 11.02.2021 17:54

Спасибо профессор ) как всегда все четко :victory:


Часовой пояс GMT +3, время: 05:58.