ZMedia Purwodadi

Cách tạo hiệu ứng tuyết rơi lãng mạn cho Blogspot

Mục lục bài viết
Cách tạo hiệu ứng tuyết rơi lãng mạn cho Blogspot
Mùa đông đang đến gần, mang theo những làn gió se lạnh và không khí lãng mạn của dịp lễ cuối năm. Đây là thời điểm tuyệt vời để “khoác áo mới” cho blog của bạn với hiệu ứng tuyết rơi nhẹ nhàng, ấn tượng và tinh tế. Hiệu ứng tuyết không chỉ tạo nên không gian ấm áp, mà còn giúp trang blog của bạn trở nên nổi bật hơn và mang lại trải nghiệm mới mẻ cho người xem. Hãy cùng tìm hiểu cách thêm hiệu ứng tuyết rơi lãng mạn cho Blogspot của bạn ngay trong bài viết này!

Lý do bạn nên thêm hiệu ứng tuyết rơi cho Blogspot

Tạo bầu không khí mùa đông

Hiệu ứng tuyết rơi không chỉ đẹp mắt mà còn gợi nhắc đến không khí mùa đông lạnh giá nhưng đầy lãng mạn. Đặc biệt, nếu bạn viết blog về phong cách sống, du lịch, hoặc các chủ đề nghệ thuật, hiệu ứng này sẽ giúp trang web của bạn trở nên hấp dẫn và dễ dàng gây ấn tượng với người đọc.

Thu hút người xem

Một hiệu ứng trực quan, dễ thương như tuyết rơi sẽ khiến người đọc cảm thấy thích thú và muốn khám phá thêm nội dung trên blog của bạn. Điều này có thể giúp cải thiện tỷ lệ giữ chân người xem và giảm tỷ lệ thoát trang.

Tăng tính thẩm mỹ cho blog

Hiệu ứng tuyết rơi lấp lánh, nhẹ nhàng tạo cảm giác thanh thoát, thư giãn và rất phù hợp cho không khí lễ hội. Đây là cách tuyệt vời để trang trí blog của bạn mà không cần phải thay đổi quá nhiều về giao diện hoặc cấu trúc.

Hướng dẫn tạo hiệu ứng tuyết rơi cho Blogspot

Bước 1: Sao chép mã JavaScript tạo hiệu ứng tuyết rơi

Dưới đây là đoạn mã JavaScript đơn giản để tạo hiệu ứng tuyết rơi. Bạn chỉ cần sao chép mã này và dán vào phần mã HTML của blog.
<script type="text/javascript">
//<![CDATA[
const snowmax = 100;
const snowcolor = ["#f2f8fa", "#eff5f7", "#dcedf1", "#ffffff"];
const snowtype = ["Times", "Arial", "Times", "Verdana"];
const snowletter = "❄";
const sinkspeed = 0.6;
const snowmaxsize = 30;
const snowminsize = 10;
const snowingzone = 1;

let snow = [];
let marginbottom, marginright;
let x_mv = [], crds = [], lftrght = [];
let timer;

const browserok = (() => {
    const browserinfos = navigator.userAgent;
    return !!(document.all && document.getElementById && !browserinfos.match(/Opera/)) || 
           !!(document.getElementById && !document.all) || 
           !!browserinfos.match(/Opera/);
})();

const randommaker = (range) => Math.floor(range * Math.random());

const initsnow = () => {
    marginbottom = document.body.scrollHeight;
    marginright = window.innerWidth - 15;

    const snowsizerange = snowmaxsize - snowminsize;

    for (let i = 0; i < snowmax; i++) {
        crds[i] = 0;
        lftrght[i] = Math.random() * 15;
        x_mv[i] = 0.03 + Math.random() / 10;

        const snowFlake = document.createElement("span");
        snowFlake.id = "s" + i;
        snowFlake.style.position = "absolute";
        snowFlake.style.top = -snowmaxsize + "px";
        snowFlake.style.fontFamily = snowtype[randommaker(snowtype.length)];
        snowFlake.style.fontSize = (randommaker(snowsizerange) + snowminsize) + "px";
        snowFlake.style.color = snowcolor[randommaker(snowcolor.length)];
        snowFlake.style.zIndex = 1000;
        snowFlake.innerHTML = snowletter;

        snow[i] = snowFlake;
        document.body.appendChild(snowFlake);

        snow[i].sink = sinkspeed * parseInt(snow[i].style.fontSize) / 5;
        snow[i].posx = calculatePosition();
        snow[i].posy = randommaker(2 * marginbottom - marginbottom - 2 * parseInt(snow[i].style.fontSize));

        snow[i].style.left = snow[i].posx + "px";
        snow[i].style.top = snow[i].posy + "px";
    }
    movesnow();
};

const calculatePosition = () => {
    switch (snowingzone) {
        case 1: return randommaker(marginright - snowmaxsize);
        case 2: return randommaker(marginright / 2 - snowmaxsize);
        case 3: return randommaker(marginright / 2 - snowmaxsize) + marginright / 4;
        case 4: return randommaker(marginright / 2 - snowmaxsize) + marginright / 2;
        default: return randommaker(marginright - snowmaxsize);
    }
};

const movesnow = () => {
    for (let i = 0; i < snowmax; i++) {
        crds[i] += x_mv[i];
        snow[i].posy += snow[i].sink;
        snow[i].style.left = snow[i].posx + lftrght[i] * Math.sin(crds[i]) + "px";
        snow[i].style.top = snow[i].posy + "px";

        if (snow[i].posy >= marginbottom - 2 * parseInt(snow[i].style.fontSize) || 
            parseInt(snow[i].style.left) > (marginright - 3 * lftrght[i])) {
            snow[i].posx = calculatePosition();
            snow[i].posy = 0;
        }
    }
    timer = setTimeout(movesnow, 50);
};

if (browserok) {
    window.onload = initsnow;
}
//]]>
</script>

Bước 2: Chèn mã hiệu ứng vào Blogspot

  1. Truy cập Blogger: Đăng nhập vào tài khoản Blogger của bạn và chọn blog mà bạn muốn thêm hiệu ứng tuyết rơi.
  2. Chỉnh sửa HTML: Vào Chủ đề > Chỉnh sửa HTML. Cuộn xuống phía cuối trang, ngay trước thẻ </body>, rồi dán đoạn mã JavaScript mà bạn vừa sao chép.
  3. Lưu thay đổi: Nhấn Lưu và tải lại blog của bạn để kiểm tra xem hiệu ứng tuyết rơi đã hiển thị đúng chưa.

Bước 3: Tùy chỉnh hiệu ứng theo phong cách riêng

Bạn có thể thay đổi một số thuộc tính trong mã JavaScript để phù hợp với phong cách của mình, tạo ra hiệu ứng tuyết độc đáo và khác biệt:
  • Màu sắc bông tuyết (snowcolor): Bạn có thể thay đổi mã màu để bông tuyết có màu sắc khác, như #EFF5F5 hoặc #E5E5E5 để tạo độ đa dạng cho tuyết.
  • Tốc độ rơi của tuyết (sinkspeed): Điều chỉnh tốc độ rơi của bông tuyết bằng cách tăng hoặc giảm giá trị sinkspeed. Giá trị cao hơn sẽ làm tuyết rơi nhanh hơn, trong khi giá trị thấp sẽ tạo cảm giác chậm rãi, thư giãn.
  • Kích thước bông tuyết (snowmaxsize và snowminsize): Tăng hoặc giảm kích thước bông tuyết để tạo hiệu ứng tuyết rơi phong phú hơn.
Cách tạo hiệu ứng tuyết rơi lãng mạn cho Blogspot

Những lưu ý khi sử dụng hiệu ứng tuyết rơi

Ảnh hưởng đến hiệu suất trang web

Mặc dù hiệu ứng tuyết rơi rất đẹp, nó có thể ảnh hưởng đến tốc độ tải trang, đặc biệt là trên các thiết bị di động hoặc khi trang có nhiều nội dung nặng. Để giữ trải nghiệm người dùng tốt nhất, bạn có thể thử nghiệm hiệu ứng này trên nhiều thiết bị và xem xét tắt nó khi mùa lễ kết thúc.

Thời gian kích hoạt hiệu ứng tuyết

Hiệu ứng tuyết rơi rất phù hợp cho mùa đông và các dịp lễ cuối năm. Tuy nhiên, sau mùa lễ, bạn có thể gỡ bỏ nó để trang web trở lại giao diện thông thường, tránh tạo cảm giác lỗi thời cho người xem.

Đảm bảo tương thích với thiết bị di động

Hiệu ứng tuyết rơi có thể không phù hợp trên tất cả các thiết bị, đặc biệt là điện thoại di động. Bạn có thể cân nhắc điều chỉnh mã JavaScript để tối ưu hóa cho các thiết bị này hoặc thử nghiệm kỹ trước khi áp dụng cho blog.

Kết luận

Thêm hiệu ứng tuyết rơi cho Blogspot là một cách thú vị để biến blog của bạn thành không gian ấm áp, lãng mạn và đậm chất mùa đông. Hy vọng với hướng dẫn chi tiết trên, bạn có thể tạo nên một diện mạo mới cho blog, mang đến trải nghiệm hấp dẫn và cuốn hút cho người xem. Hãy thử ngay để biến trang web của bạn thành “chốn dừng chân” lãng mạn, lung linh trong mùa đông này!
aHí
aHí ★ Tôi không thể, bạn không thể, nhưng chúng ta có thể ★

4 nhận xét

Comment Author Avatar
YMG
11/04/2024 Xóa
Đón người tình mùa đông sớm thế? 🌲 ⛄ 🏂
Miền Nam VN nói chung từ vĩ tuyến 17 trở vào bây giờ cũng có mùa đông tuyết rơi ❄ nữa chứ không chỉ có hai mùa mưa nắng ☔ ⛅ à? 😲 😁
Comment Author Avatar
11/04/2024 Xóa
"Người tình" đã đến sát bên và thì thầm vào tai rồi, phải chuẩn bị thôi bạn ơi...😁
Comment Author Avatar
YMG
11/04/2024 Xóa
Lúc trước các blog áp dụng code hiệu ứng tuyết rơi từ các trang "chia sẻ thì ít mà sao chép là nhiều", "xào nấu post ID" v.v... thường hay bị lag, giật và đơ... khiến cho khách truy cập rời đi sớm không tưởng.

anh Hí blogger là blog "mới" mà code hình như "cũ" rồi. 😑
Comment Author Avatar
11/04/2024 Xóa
"đông về nhanh quá" nên "chưa chuẩn bị kịp. Mặc lại "áo cũ" chờ ngày "thay áo" 🤗