Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 04.06.2022, 10:01
Профессор
Отправить личное сообщение для ureech Посмотреть профиль Найти все сообщения от ureech
 
Регистрация: 11.03.2013
Сообщений: 778

Вернее класс добавляется только в classList так
if(!obj[0].classList.contains('on')){
                            obj[0].classList.add('on');
                            //console.log(obj[0])
                        }

Но в html тег не добавляется
Ответить с цитированием
  #12 (permalink)  
Старый 04.06.2022, 10:25
Профессор
Отправить личное сообщение для ureech Посмотреть профиль Найти все сообщения от ureech
 
Регистрация: 11.03.2013
Сообщений: 778

Понятно. Оказывается добавляется, но не к тому элементу,какому надо. К последнему.
Ответить с цитированием
  #13 (permalink)  
Старый 04.06.2022, 10:34
Профессор
Отправить личное сообщение для ureech Посмотреть профиль Найти все сообщения от ureech
 
Регистрация: 11.03.2013
Сообщений: 778

С этим разобрался. Нужно было инициировать объект при mouseover
Ответить с цитированием
  #14 (permalink)  
Старый 04.06.2022, 11:04
Профессор
Отправить личное сообщение для ureech Посмотреть профиль Найти все сообщения от ureech
 
Регистрация: 11.03.2013
Сообщений: 778

С mouseover вроде решил.
$(list[i]).on("mouseover", function (e) {   
                        var obj = $(this).parent();    
                        if(!this.classList.contains('icon'))return;
                        if(!obj[0].classList.contains('on')){
                            obj[0].classList.add('on');                           
                        }
                    });

На mouseout теперь застрял)
Ответить с цитированием
  #15 (permalink)  
Старый 04.06.2022, 13:20
Профессор
Отправить личное сообщение для ureech Посмотреть профиль Найти все сообщения от ureech
 
Регистрация: 11.03.2013
Сообщений: 778

Ну вроде разобрался. Проблема в том, что после ухода курсора с блока тот не хочет пропадать.

Последний раз редактировалось ureech, 04.06.2022 в 13:22.
Ответить с цитированием
  #16 (permalink)  
Старый 04.06.2022, 15:14
Профессор
Отправить личное сообщение для ureech Посмотреть профиль Найти все сообщения от ureech
 
Регистрация: 11.03.2013
Сообщений: 778

Так и не победил. Повесил на клик по body. Вот весь код.
<style>
.list
{
  opacity: 0;
} 
.on .list{
transition: cubic-bezier(1,0,0,0) 1s;
    opacity: 1;
}
</style>
 
<div class="icons">
<div class="icon"><img... /></div>
<div class="list " id = "list_id">....</div>
</div>


var list = document.querySelectorAll('.icons');
        var count = list.length;
        var i = 0;
        for (i; i < count; i++) {
            var obj = list[i].children;// Все иконки
            $(obj[0]).on("mouseover", function (e) {
                var h6 = $(this).parent(); // Родитель выбранной иконки
                h6[0].classList.add('on'); // Делаем видимым блок

            });

            $(obj[0]).on("mouseout", function (e) {
                var h6 = $(this).parent();
                var next = $(this).next()[0] // Сам блок
                var mouse = document.elementFromPoint(e.clientX, e.clientY);
                if (mouse == next) {
                return;
                }
                else if ($(this)[0]) {
                    h6[0].classList.remove('on');
                }

            });
        }
        $('body').on("click", function (e) {
            $('.icons').removeClass('on');
        })

Последний раз редактировалось ureech, 04.06.2022 в 15:17.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не срабатывает событие OnMouseOver denis_alekss Общие вопросы Javascript 1 01.12.2020 21:57
Событие click Гробовщик jQuery 1 31.07.2013 07:28
Событие onmouseover. Помогите разобраться, пожалуйста. mary Events/DOM/Window 4 09.06.2013 23:52
Как правильно подавить событие при подключении своего обработчика? Маэстро Firefox/Mozilla 2 03.09.2011 11:46
FireFox: onmouseover не работает при зажатой кнопке мыши no. Общие вопросы Javascript 4 19.08.2008 13:43