2017-11-26 10 views
0

JavaScriptを使用してdivを押して、Noticeと表示しています。しかし、私はそれが負荷で点滅し、それはあまり滑らかではないことを刺激することがわかります。これを回避する方法はありますか? slideDown(1000);を追加することでスムーズにすることができますが、点滅はありませんが、私はすべてのページでslideDownにしたくありません。ただ点滅することなく表示するだけです。スクリプトの点滅を避ける

Live test

のアイデア?

#fixed { 
    position: relative; 
} 

#notice { 
    background: #31384a; 
    color: #FFF; 
    padding: 5px; 
    position: fixed; 
    z-index: 999912312399; 
    width: 100%; 
    top: 0; 
    font-weight: 400; 
    font-size: 12px; 
    text-align: center; 
    display: none; 

    .exit { 
     position: absolute; 
     right: 10px; 
     top: 5px; 
     cursor: pointer; 

     img { 
      width: 10px; 
      height: 10px; 
     } 
    } 
} 

JS

var clearCookie = function() { 
    var result = $.removeCookie('JSFiddleCookieNotification'); 
    if (result) { 
     alert('Cookie removed, please reload.'); 
    } else { 
     alert('Error: Cookie not deleted'); 
    } 
}; 

var closeCookie = function() { 
    $("#notice").slideUp(400, function(){ 
     $(this).remove(); 
    }); 
    $('#fixed').animate({ 
     top: 0 
    }, 400); 
    $.cookie('JSFiddleCookieNotification', 'Notified', { 
     expires: 7 
    }); 
}; 

// Bind the buttons 
$("#clearCookie").on("click", clearCookie); 
$(".exit").on("click", closeCookie); 



// Now display the cookie if we need to 
if ($.cookie('JSFiddleCookieNotification') == null) { 
    $('#notice').show(); 

    var timer = setInterval(function() { 
     $('navmenu, navmenu-mobile, #fixed').css({ 
      top: $('#notice').outerHeight() 
     }); 
     if ($('#notice').outerHeight() == $('#fixed').css('top')) { 
      clearInterval(timer); 
     } 
    }, 10); 
} 

答えて

0

私はすべてのあなたのコードを読む機会を得ていないが、簡単な修正はであなたのdivを下にスライドすることを、基本的にslideDown(0)

を使用することです0ミリ秒で、.show()と同じことが達成されますが、点滅も停止します

+0

回答ありがとうございますが、動作しないようです。私はサービスサイドのクッキーを使用していない、私はShopifyを使用しているのでクライアント側にある。私は.slideDown(0)を追加しました。 .Show()の代わりに。 –

+0

私が理解できない、.slideDown(0);クライアント側です。私はサーバー側のクッキーについても言及していませんでした。 – OneStig

関連する問題