Tạo Sticky cho nhiều Widget của blogspot


Thông thương khi các bạn kéo thanh cuộn xuống để xem phần dưới của blog thì các phần trên nó sẽ bị ẩn đi. Vậy nếu muốn hiển thị một tiện ích có ID bất kỳ khi bạn kéo chuột xuống dưới blog dạng Sticky thì phải làm thế nào.

Bài viết này BỜM sẽ hướng dẫn các bạn làm điều đó tạo Sticky cho một widget có Id bất kỳ, Bạn có thể áp dụng nó cho các widget chứa các nút like của các mạng xã hội hay hộp đăng ký nhận tin của bạn, hoặc đơn giản hơn là cho một menu, một banner quảng cáo mà bạn muốn. Với cách tạo Sticky này cho dù bạn kéo chuột đến vị trí nào đi nữa thì tiện ích của bạn vẫn luôn xuất hiện tại vị trí mà bạn muốn, trong bài viết này là trên đầu của blog.


Bạn có thể xem demo ngay trên blog của mình hãy kéo chuột xuống dưới chân trang và chú ý thanh menu ở trên đầu blog mình cũng di chuyển theo và không hề biến mất nha.

» Bước 1: Xác định ID của Wdget tiện ích cần tạo hiệu ứng Sticky
1.1- Vào Bố cục (Layout) -> Nhấp vào Chỉnh sửa (Edit) trên Widget cần áp dụng tiện ích Sticky.
1.2 - Một cửa sổ Popup bật lên, bạn nhìn vào phía trên góc phải (gần thanh tiêu đề) sẽ thấy dòng có dạng tương tự sau: …null&widgetId=HTML10 (trong trường hợp này là widget HTML10, đối với widget khác sẽ có ID khác)


- Sau khi xác định được Id của tiện ích bạn đóng cửa sổ popup đó lại và tiến hành bước tiếp theo nha.
» Bước 2: Thêm code để tạo hiệu ứng Sticky cho widget mà bạn muốn
Sau khi xác định được Id của tiện ích cần tạo hiệu ứng Sticky bạn tiếp tục thực hiện các bước sau để dán Sticky cho tiện ích đó nha:
2.1- Đăng nhập vào blog của bạn.
2.2. Vào phần Mẫu (Template) => Chọn Chỉnh sửa HTML (Edit HTML)
2.3- Chèn đoạn code bên dưới vào trước thẻ </body>

<script>
// Sticky widget by bomkhung.info
// Free to use or share, but please keep this notice intact.
//<![CDATA[
bs_makeSticky("HTML5");
function bs_makeSticky(elem) {
var bs_sticky = document.getElementById(elem);
var scrollee = document.createElement("div");
bs_sticky.parentNode.insertBefore(scrollee, bs_sticky);
var width = bs_sticky.offsetWidth;
var iniClass = bs_sticky.className + ' bs_sticky';
window.addEventListener('scroll', bs_sticking, false);
function bs_sticking() {
var rect = scrollee.getBoundingClientRect();
if (rect.top < 0) {
bs_sticky.className = iniClass + ' bs_sticking';
bs_sticky.style.width = width + "px";
} else {
bs_sticky.className = iniClass;
}
}
}
//]]>
</script>

<style>
.bs_sticking {background:#f2f2f2 !important; position:fixed !important; top:0; z-index:9999; box-shadow:0px 10px 4px -5px rgba(0,0,0,0.3); margin-top: 0; position:relative\9 !important;}
</style>

» Tùy chỉnh:
Thay HTML5 thành Id widget mà bạn muốn hiển thị trong chế độ Sticky. Trong trường hợp này id của mình là HTML5 bạn hãy thay đổi lại nó cho phù hợp với tiện ích mà bạn muốn áp dụng nha;
Bạn cũng có thể tùy chỉnh lại màu săc, cỡ chữ và cị trí dính banner bằng cách thay đổi các thuộc tính nằm trong class .bs_sticking.

2.4- Lưu mẫu lại và vào blog kiểm tra lại xem tiện ích mà bạn vừa áp dụng có hiển thị khi kéo chuột xuống chân của blog không nha.

DEMO ở bên sidebar của mình nhé mọi người :)
CHÚC CÁC BẠN THÀNH CÔNG

Hướng dẫn bình luận

Mọi người để lại bình luận góp ý, nhận xét về những bài viết mà mình chia sẽ văn minh lịch sự hay kích động, Không spam, không chèn link quảng cáo, bán hàng, Không sử dụng từ ngữ thô tục, xúc phạm, kích động, Link chỉ được phép khi thực sự liên quan đến nội dung bài viết, Không mạo danh người khác hoặc sử dụng email giả, Bình luận vi phạm sẽ bị xóa không cần thông báo trước.
Mọi người lưu ý răng, nếu muốn chia sẽ code ở bình luần thì cần mã hóa code trước khi bỏ vào khung nhé. :)
⑴ Chèn ℂ𝕤𝕤 theo mẫu : [pre css] ℂ𝕤𝕤 [/pre]
⑵ Chèn ℍ𝕥𝕞𝕝 theo mẫu : [pre html] ℍ𝕥𝕞𝕝 [/pre]
⑶ Chèn 𝕁𝕒𝕧𝕒𝕤𝕔𝕣𝕚𝕡𝕥 theo mẫu : [pre js] 𝕁𝕒𝕧𝕒𝕤𝕔𝕣𝕚𝕡𝕥 [/pre]

🖼️ Chèn 𝕀𝕞𝕒𝕘𝕖 theo mẫu : [img] 𝕃𝕚𝕟𝕜 𝕀𝕞𝕒𝕘𝕖 [/img]
🎞️ Chèn Video 𝕐𝕠𝕦𝕥𝕦𝕓𝕖 theo mẫu : [youtube] 𝕃𝕚𝕟𝕜 𝕪𝕠𝕦𝕥𝕦𝕓𝕖 [/youtube]

Đăng nhận xét

@Bloggers Community

@Catalogics

CSS (31) Google (7)

@Total Pageviews