私はモバイルでのみ奇妙な問題が発生しています。 click
には、最初にtoggle
が1回発生します。これは、ハンバーガーメニューまたは検索アイコンのいずれかと最初にやり取りするときに必要なものです。FeatherLightライトボックス||モバイルトグルクラスの問題
lightbox
(FeatherLight)を開いて閉じた後、元のハンバーガー/検索はclick
toggle
で2回発生します。
モバイルメニューと検索アイコンは最初は正常に動作します。しかし、私がFeatherLightとやりとりをするときには、クラスを2回トグルするので、トグルが正しく機能しません。私はevent.preventDefault();
を私のクリックハンドラに無駄に追加しました。誰にもアイデアはありますか?ここで
ライトボックスを呼び出して、私のJSです:
$('.cards__inner a').featherlight({
targetAttr: 'href',
afterContent: function() {
$footer = $('section.lightbox-footer');
$footer.insertAfter('.featherlight-content');
}
});
そして、私の携帯ナビゲーション:
var $headerMenu = $('.header__menu'),
$navigation = $('.navigation'),
$navigationOverlay = $('.navigation__overlay');
$headerMenu.on('click', function() {
event.stopPropagation();
event.preventDefault();
$('body').toggleClass('noscroll');
$navigation.toggleClass('open');
$navigationOverlay.toggleClass('open');
$(this).toggleClass('open');
// mobile wonkieness
height = $(window).height();
$navigation.height(height + 100);
$navigationOverlay.height(height + 100);
});
$navigationOverlay.on('click', function() {
$('body').removeClass('noscroll');
$navigation.removeClass('open');
$navigationOverlay.removeClass('open');
$headerMenu.removeClass('open');
});
// Toggle search box
var $searchForm = $('#search-box'),
$searchLink = $('.search-link');
$searchLink.on('click', function() {
$searchForm.toggleClass('open');
$(this).toggleClass('open');
});
私もevent.stopImmediatePropagation();
見てきたが、私は、単純な何かが欠けている必要があります。少なくとも私はそう願っています。 Iveはこの設定をしばらく使用して、FeatherLightが使用されて初めて問題が発生し始めました。
どのような考えですか?
あなたはここでそれをオンラインで見ることができます助けをhttp://dose.encryptdesigns.com/
感謝を!