Hiệu ứng trượt mượt mà cho liên kết neo (anchor link) trong Blogspot - NTLRUBY -->
Hiệu ứng trượt mượt mà cho liên kết neo (anchor link) trong Blogspot Hiệu ứng trượt mượt mà cho liên kết neo (anchor link) trong Blogspot
  • Hiệu ứng trượt mượt mà cho liên kết neo (anchor link) trong Blogspot

       Khi các bạn có một bài viết dài, trong đó được chia ra nhiều mục. Hay nói cách khác, các bạn muốn chia bài viết ra nhiều phần nhỏ cho người dùng dễ tìm đến phần cần xem. Khi đó các bạn sẽ tìm cách tạo mục lục cho bài viết của mình. Dù đã có được bài viết với mục lục khá đẹp mắt nhưng lúc này người dùng bấm vào mục lục lại nhảy đột ngột đến khu vực cần truy cập đến. Điều này làm các bạn khó chịu?

    Thủ thuật blogspot
       Bài này mình chia sẻ với các bạn đoạn code tạo hiệu ứng trượt mượt mà cho liên kết neo (anchor link) trong Blogspot.

    Vậy liên kết neo (anchor link) là gì?

       Liên kết neo (liên kết nội bộ) hay còn gọi là Anchor link nghĩa là một liên kết trong văn bản sẽ dẫn đến một vị trí đặc biệt trong cùng tài liệu (cùng một trang) mà không phải tải lại hoặc mở một trang mới. Một liên kết neo (anchor link) sẽ có hai phần:

          1. Khu vực được neo, được khai báo bằng thẻ bất kỳ với thuộc tính id hoặc name

             ▪ ví dụ: <h2 id="diem-den">Điểm đến của liên kết neo</h2>

          2. Liên kết neo, được khai báo bằng thẻ <a> có thuộc tính là href nhưng giá trị là có dấu # và tên id của khu vực cần truy cập đến

             ▪ ví dụ: <a href="#diem-den">xem nội dung</a>.

       Khi nhấp vào liên kết "xem nội dung" thì nó sẽ tự động nhảy đến khu vực được gán thuộc tính id="diem-den". Đây chính là thủ thuật được áp dụng trong những cách tạo mục lục cho bài viết.


    Không dong dài nữa, dưới đây là:

    Code hiệu ứng trượt mượt mà cho liên kết neo (anchor link) trong Blogspot

       Trước tiện các bạn xem qua:

          👉 Nội dung không có hiệu ứng trượt.

          👉 Nội dung có hiệu ứng trượt.

    Để thêm hiệu ứng trượt vô cùng đơn giản, các bạn chỉ việc vào trang quản trị Blogger -> Chủ đề -> Chỉnh sửa HTM và thêm đoạn code dưới đây vào trước thẻ </body> là xong.

    <script>//<![CDATA[

    jQuery(function() {

     jQuery('a[href*="#"]:not([href="#"])').click(function() {

     if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'') && location.hostname == this.hostname) {

     var target = jQuery(this.hash);

     target = target.length ? target : jQuery('[name=' + this.hash.slice(1) +']');

     if (target.length) {

     jQuery('html, body').animate({

     scrollTop: target.offset().top

     }, 1000);

     return false;

     }

     }

     });

    });

    //]]></script>


    Bổ sung bài cũ:

       Tiện đây mình chia sẻ thêm cho bạn nào đã áp dụng nút quay lại mục lục theo bài: Mục lục cho bài viết Blogspot thêm nút quay lại mục lục
       Để khi bấm vào nút "Trở lại mục lục bài viết" nó cũng trượt lên chứ không nhảy lên thì các bạn thay như sau:
      Đoạn code cũ trong bài: 
    <div class="back_muclucontent" onclick="document.getElementById('mucluc_list').scrollIntoView(true);" role="button" tabindex="0"> Trở lại mục lục bài viết</div>
       Trong đó các bạn thay .scrollIntoView(true); (tô vàng) thành .scrollIntoView({ behavior: 'smooth', block: 'center' })
       Kết quả sẽ là:
    <div class="back_muclucontent" onclick="document.getElementById('mucluc_list').scrollIntoView({ behavior: 'smooth', block: 'center' })" role="button" tabindex="0"> Trở lại mục lục bài viết</div>
    Lưu bài viết lại và kiểm tra nhé.

    Chúc các bạn thành công!

  • Bài Viết Liên Quan

    Vui lòng đăng nhập tài khoản tương ứng trên trình duyệt của bạn trước khi bình luận!

    Google

    Zalo

    Không có nhận xét nào :

    Đăng nhận xét

    Hãy đánh dấu vào "Thông báo cho tôi" trước khi gửi bình luận để nhận được thông báo khi Admin trả lời!

NTLRUBY

Đăng ký kênh để ủng hộ NTLRUBY và xem những video thị phạm code nhé!