Пузырящаяся проблема с Fancybox и Hoverintent

Я использую комбинацию fancybox (v2.1.5) и hoverintent (v1.8.0), чтобы открывать увеличенное изображение, когда пользователь наводит указатель мыши на миниатюру, а затем закрывать увеличенное изображение, когда мышь уходит. Это отлично работает в Chrome 41.0.2272.104 на моем iMac. Однако, когда я просматриваю его в Firefox 36.0.4, более крупное изображение постоянно мигает и выключается, пока мышь неподвижна над миниатюрой. Я использую трекпад.

Вот немного HTML:

<a class="fancylink" href="./custom/img/parts/blah.jpg" title="Blah">
    <img src="./custom/img/parts/blah.jpg" width="100" height="100" />
</a>

и код внутри функции готовности документа jQuery:

    function openFancybox () {
      $(this).trigger("click");
    };
    function closeFancybox () {
      $.fancybox.close(true);
    };
    $(".fancylink").fancybox({
    closeClick : true,
    openEffect : "none",
    helpers : {
      title : {
        type : "inside"
      },
      overlay : {
        css : {
          "background" : "rgba(238,238,238,0.15)"
          }
        }
      }
    }).hoverIntent(openFancybox, closeFancybox);

Кто-нибудь может объяснить, почему это работает в Chrome, но не в Firefox?


person millport    schedule 24.03.2015    source источник
comment
Это picssel.com/playground/jquery/mouseEnterLeave_30jul12.html работает для вас ?   -  person JFK    schedule 24.03.2015
comment
Это использует более старую версию fancybox. Но да, это работает. Что-то изменилось в новом fancybox? Возможно, мне стоит вернуться к старой версии.   -  person millport    schedule 24.03.2015
comment
На самом деле не имеет значения версия fancybox, если вы используете правильные параметры API для используемой вами версии. Я постараюсь сделать демо с новой версией fancybox и вернусь к вам позже.   -  person JFK    schedule 24.03.2015
comment
Хорошо, вот демонстрация с использованием fancybox v2.1.5 и hoverintent v1.8.0 picssel.com /playground/jquery/mouseEnterLeave_24mar15.html ... у вас работает?   -  person JFK    schedule 24.03.2015
comment
ВАЖНО обратите внимание, что вы должны отключить оверлей fancybox, потому что он вызовет событие mouseleave (проверьте исходный код моей демонстрации)   -  person JFK    schedule 24.03.2015
comment
Спасибо за новый пример. Отключение наложения помогает в некоторой степени. Если вы посмотрите мой тестовый сайт по адресу: millport57995489.us/paddlewheels3.php, вы увидите, что все OK в Chrome, но некоторые изображения все еще мигают в Firefox.   -  person millport    schedule 24.03.2015
comment
Они мигают, потому что, когда fancybox открывается, он фактически закрывает миниатюры (где применяется hoverintent), поэтому он запускает событие mouseleave (когда мышь наводит не на миниатюру, а на открытый fancybox). Вам либо нужно переопределить макет, чтобы зависший миниатюра всегда видна (и указатель может оставаться наведенным) или закрыть fancybox вручную вместо выхода из мыши (или вам может потребоваться связать больше событий, чтобы закрыть fancybox, когда миниатюра и/или сам fancybox не зависает)   -  person JFK    schedule 24.03.2015