мигание элементов, на которых есть hover
помогите пожалуйста разобраться
есть 2 элемента. первый позиционирован relative (#cart_informer), второй - absolute (.tooltip_cart). эти элементы частично перекрываются на странице. разметку их не привожу, так как она значения не имеет на эти элементы повешен hover следующим образом $('#cart_informer, .tooltip_cart').hover( function () { $('.tooltip_cart').stop(false, true).fadeIn('fast'); }, function () { $('.tooltip_cart').stop(false, true).fadeOut('slow'); } ); проблема в том, что при перемещении курсора между этими элементами происходит мигание одного из них(.tooltip_cart) |
zlodiak,
используйте $("#cart_informer, .tooltip_cart").mouseenter(function(){ //Код }).mouseleave(function(){ //Код }); |
пробовал. то же самое получается
|
Попробуйте в каждую функцию добавить event.stopPropagation()
|
пробовал. не помогло
вот мой код $("#cart_informer, .tooltip_cart").mouseenter(function(event){ event = event || window.event; event.stopPropagation(); if($.cookie('cart_flag') == 'true'){ $('.tooltip_cart').stop(false, true).fadeIn('fast'); }; }).mouseleave(function(event){ event = event || window.event; event.stopPropagation(); $('.tooltip_cart').stop(false, true).fadeOut('slow'); }); к сожалению саму страницу показать не могу |
теоретически я понимаю так
$("#cart_informer, .tooltip_cart") здесь нужно что то одно оставить а то получается с одного элемента уходит а на другой приходит-одновременно включается и fadein и fadeout ну или разделить-для каждой свою функцию оставьте только $(" .tooltip_cart") |
так тоже не работает
$("#cart_informer").mouseenter(function(event){ event = event || window.event; event.stopPropagation(); if($.cookie('cart_flag') == 'true'){ $('.tooltip_cart').stop(false, true).fadeIn('fast'); }; }).mouseleave(function(event){ event = event || window.event; event.stopPropagation(); $('.tooltip_cart').stop(false, true).fadeOut('slow'); }); $(".tooltip_cart").mouseenter(function(event){ event = event || window.event; event.stopPropagation(); if($.cookie('cart_flag') == 'true'){ $('.tooltip_cart').stop(false, true).fadeIn('fast'); }; }).mouseleave(function(event){ event = event || window.event; event.stopPropagation(); $('.tooltip_cart').stop(false, true).fadeOut('slow'); }); неужели дело в разметке и css?.. такого быть не может |
можете кинуть изображение (рисунок, скрин) как расположены блоки и дать справку о наведении??
|
по теории:
-сделайте исключения if($('.tooltip_cart').attr('opacity')==1) {наведении на второй невозможно}else{..} и так же обратно |
|
Часовой пояс GMT +3, время: 18:33. |