Hot Post

Ẩn Sticky Menu khi cuộn xuống và hiện lại khi cuộn lên cho Blogger


Hide Sticky Menu on scroll down and show on scroll up

Trong bài viết trước Cố định, tạo "Sticky" Floating Menu và Widget cho Blogger chắc hẳn các bạn đã tạo được cho mình một "Sticky Menu" ưng ý rồi chứ? Hôm nay Iris Tips sẽ chia sẻ cho các bạn một thủ thuật nâng cao của "Sticky Menu", giúp cho menu của bạn trông hiện đại và chuyên nghiệp hơn, đó là "Ẩn Sticky Menu khi cuộn xuống và hiện lại khi cuộn lên cho Blogger".

Thủ thuật khá hữu ích khi các bạn lướt web bằng di động, không bị "Sticky Menu" chiếm mất một phần diện tích màn hình. Bạn cũng có thể Demo trực tiếp thủ thuật này khi truy cập Iris Tips trên điện thoại di động đấy.


HTML

1Đầu tiên các bạn cần xác định Class hoặc ID chứa Menu, trong ví dụ là .menu

Xem thêm: Cách xác định ID của một Widget trong Blogger

2Tiếp theo vào Mẫu >> Chỉnh sửa HTML, tìm đến đoạn code HTML thanh Menu, ví dụ
<div class="menu">
...
</div>

Sau đó bạn thêm class nav-down vào thẻ div chứa thanh Menu
<div class="menu nav-down">
...
</div>

CSS

3Dán đoạn CSS dưới đây trước thẻ ]]></b:skin>
.nav-up {
    top: -40px;
}

Chỉnh sửa: top: -40px; cho phù hợp với chiều cao thanh menu của website bạn.

jQuery

4Tìm đến thẻ </body> và dán đoạn code dưới đây vào trước thẻ đó.
// Hide Menu on on scroll down
var didScroll;
var lastScrollTop = 0;
var delta = 5;
var navbarHeight = $('.menu').outerHeight();

$(window).scroll(function(event){
    didScroll = true;
});

setInterval(function() {
    if (didScroll) {
        hasScrolled();
        didScroll = false;
    }
}, 250);

function hasScrolled() {
    var st = $(this).scrollTop();
    
    // Make sure they scroll more than delta
    if(Math.abs(lastScrollTop - st) <= delta)
        return;
    
    // If they scrolled down and are past the navbar, add class .nav-up.
    // This is necessary so you never see what is "behind" the navbar.
    if (st > lastScrollTop && st > navbarHeight){
        // Scroll Down
        $('.menu').removeClass('nav-down').addClass('nav-up');
    } else {
        // Scroll Up
        if(st + $(window).height() < $(document).height()) {
            $('.menu').removeClass('nav-up').addClass('nav-down');
        }
    }
    
    lastScrollTop = st;
}

5Thêm thư viện jQuery dưới đây vào sau đoạn code trên nếu blog của bạn chưa có.
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>


Nếu có bất kỳ vấn đề khó khăn hay câu hỏi gì, bạn đừng ngần ngại, hãy để lại bình luận ở form bên dưới nhé.
Chúc bạn thành công!

Created by Iris Tips
Đăng ký nhận tin khuyến mãi, thủ thuật mới

Mẹo nhỏ khi bình luận
  • - Để viết chữ in đậm hãy sử dụng thẻ <b>chữ in đậm</b>
  • - Để viết chữ in nghiêng hãy sử dụng thẻ <i>chữ in nghiêng</i>
  • - Để viết code hãy sử dụng công cụ Conversion ở bên dưới để mã hóa và sau đó dán vào khung bình luận.
  • - Để chèn hình ảnh, video chỉ cần dán link trực tiếp của hình ảnh hoặc video vào khung bình luận (hỗ trợ: jpg, gif, png, bmp, Youtube).
  • - Bạn có thể upload hình ảnh, tập tin trực tiếp từ máy tính bằng cách sử dụng công cụ Up ảnh hoặc Up file ở bên dưới.
  • - Bạn có thể check vào ô Notify me ở khung nhận xét để nhận thông báo qua email khi ai đó trả lời bình luận của bạn.

0 Response to "Ẩn Sticky Menu khi cuộn xuống và hiện lại khi cuộn lên cho Blogger"

Đăng nhập bằng Google


Trở thành người đầu tiên bình luận cho bài viết này!