Thứ Bảy, 11 tháng 4, 2015

TẠO LINK NHẤP NHÁY ĐỔI MÀU KHI RÊ CHUỘT VÀO

TẠO LINK NHẤP NHÁY ĐỔI MÀU KHI RÊ CHUỘT VÀO


Bắt đầu thực hiện:


 1. Đăng nhập vào blog, tới "Trang tổng quan - Thiết kế" (xem các ảnh dưới).



2. Bấm vào hình tam giác nhỏ [1], một trình đơn thả xuống. Bấm tiếp vào "Mẫu" [2]. Ở bước này, nếu bạn chưa quen thì nên sao lưu mẫu (template) blog lại để đề phòng sự cố do nhầm lẫn. Nếu chưa hiểu cách sao lưu, bạn có thể tham khảo BÀI VIẾT NÀY! 

  
 3. Bấm vào "Chỉnh sửa HTML" [3] sẽ hiện ra bảng HTML trong template của Blog. Nếu đợi 30 giây vẫn không hiện ra bảng HTML - bấm vào nút "Trở lại" [5], rồi  bấm "Chỉnh sửa HTML" [3] một lần nữa sẽ hiện ra. 


4. Nhấp chuột trái vào một vị trí bất kỳ trong bảng HTML vừa hiện ra rồi bấm tổ hợp phím "Ctrl" + "F" trên bàn phím (bấm và giữ Ctrl rồi bấm F) sẽ hiện ra bên góc phải ô"Search" [4]. Gõ hoặc dán dòng mã </head> vào ô đó và nhấn "Enter" trên bàn phím. Dòng mã </head> [6] sẽ tìm thấy (nằm trong nền màu vàng nhạt). Copy đoạn mã trong khung dưới và dán lên phía trên dòng </head> (tạo một dòng trống bên trên </head> rồi dán vào). 
Nên copy và dán cả dòng chú thích "<!-- Bắt đầu link nhấp nháy --> <!-- Kết thúc link nhấp nháy -->" để khi cần gỡ bỏ hiệu ứng sẽ không nhầm lẫn. 
<!-- Bắt đầu link nhấp nháy -->
    <script type='text/javascript'> 
//<![CDATA[ 
var rate = 20; 
if (document.getElementById) 
window.onerror=new Function("return true") 
var objActive;  // The object which event occured in 
var act = 0;    // Flag during the action 
var elmH = 0;   // Hue 
var elmS = 128; // Saturation 
var elmV = 255; // Value 
var clrOrg;     // A color before the change 
var TimerID;    // Timer ID 
if (document.all) { 
    document.onmouseover = doRainbowAnchor; 
    document.onmouseout = stopRainbowAnchor; 
} 
else if (document.getElementById) { 
    document.captureEvents(Event.MOUSEOVER | Event.MOUSEOUT); 
    document.onmouseover = Mozilla_doRainbowAnchor; 
    document.onmouseout = Mozilla_stopRainbowAnchor; 
} 
function doRainbow(obj) 
{ 
    if (act == 0) { 
        act = 1; 
        if (obj) 
            objActive = obj; 
        else 
            objActive = event.srcElement; 
        clrOrg = objActive.style.color; 
        TimerID = setInterval("ChangeColor()",100); 
    } 
} 

function stopRainbow() 
{ 
    if (act) { 
        objActive.style.color = clrOrg; 
        clearInterval(TimerID); 
        act = 0; 
    } 
} 

function doRainbowAnchor() 
{ 
    if (act == 0) { 
        var obj = event.srcElement; 
        while (obj.tagName != 'A' && obj.tagName != 'BODY') { 
            obj = obj.parentElement; 
            if (obj.tagName == 'A' || obj.tagName == 'BODY') 
                break; 
        } 
        if (obj.tagName == 'A' && obj.href != '') { 
            objActive = obj; 
            act = 1; 
            clrOrg = objActive.style.color; 
            TimerID = setInterval("ChangeColor()",100); 
        } 
    } 
} 

function stopRainbowAnchor() 
{ 
    if (act) { 
        if (objActive.tagName == 'A') { 
            objActive.style.color = clrOrg; 
            clearInterval(TimerID); 
            act = 0; 
        } 
    } 
} 

function Mozilla_doRainbowAnchor(e) 
{ 
    if (act == 0) { 
        obj = e.target; 
        while (obj.nodeName != 'A' && obj.nodeName != 'BODY') { 
            obj = obj.parentNode; 
            if (obj.nodeName == 'A' || obj.nodeName == 'BODY') 
                break; 
        } 
        if (obj.nodeName == 'A' && obj.href != '') { 
            objActive = obj; 
            act = 1; 
            clrOrg = obj.style.color; 
            TimerID = setInterval("ChangeColor()",100); 
        } 
    } 
} 

function Mozilla_stopRainbowAnchor(e) 
{ 
    if (act) { 
        if (objActive.nodeName == 'A') { 
            objActive.style.color = clrOrg; 
            clearInterval(TimerID); 
            act = 0; 
        } 
    } 
} 

function ChangeColor() 
{ 
    objActive.style.color = makeColor(); 
} 

function makeColor() 
{ 
    // Don't you think Color Gamut to look like Rainbow? 
    // HSVtoRGB 
    if (elmS == 0) { 
        elmR = elmV;    elmG = elmV;    elmB = elmV; 
    } 
    else { 
        t1 = elmV; 
        t2 = (255 - elmS) * elmV / 255; 
        t3 = elmH % 60; 
        t3 = (t1 - t2) * t3 / 60; 
        if (elmH < 60) { 
            elmR = t1;  elmB = t2;  elmG = t2 + t3; 
        } 
        else if (elmH < 120) { 
            elmG = t1;  elmB = t2;  elmR = t1 - t3; 
        } 
        else if (elmH < 180) { 
            elmG = t1;  elmR = t2;  elmB = t2 + t3; 
        } 
        else if (elmH < 240) { 
            elmB = t1;  elmR = t2;  elmG = t1 - t3; 
        } 
        else if (elmH < 300) { 
            elmB = t1;  elmG = t2;  elmR = t2 + t3; 
        } 
        else if (elmH < 360) { 
            elmR = t1;  elmG = t2;  elmB = t1 - t3; 
        } 
        else { 
            elmR = 0;   elmG = 0;   elmB = 0; 
        } 
    } 
    elmR = Math.floor(elmR).toString(16); 
    elmG = Math.floor(elmG).toString(16); 
    elmB = Math.floor(elmB).toString(16); 
    if (elmR.length == 1)    elmR = "0" + elmR; 
    if (elmG.length == 1)    elmG = "0" + elmG; 
    if (elmB.length == 1)    elmB = "0" + elmB; 
    elmH = elmH + rate; 
    if (elmH >= 360) 
        elmH = 0; 
    return '#' + elmR + elmG + elmB; 
}
//]]> 
</script>
<!-- Kết thúc link nhấp nháy -->  
 
  Chú ý: Sau khi dán mã, tìm ở cuối đoạn mã vừa dán và xóa dòng nhắc nhở này: "Bài gốc: http:// ......................... Bài viết đã được đăng ký bản quyền. Bạn vui lòng ghi rõ nguồn để thể hiện nhân cách của bạn! Xin cảm ơn!" 

Cuối cùng:

Bấm "Lưu mẫu" và trở lại trang chủ xem thành quả.

Lưu ý: 

Nên copy và dán thẳng lên blog của bạn, vì nếu dán lưu tạm vào đâu đó - mã có thể bị lỗi. Trường hợp mạng yếu, đợi lâu vẫn chưa lưu được. Bạn có thể thoát ra và mở template (đã sao lưu) bằng một công cụ soạn thảo như Notepad + +,... Sau đó thực hiện việc dán mã vào đúng vị trí như trên, lưu lại rồi thay thế template vừa dán mã cho blog của bạn. Bạn có thể tải Notepad + +  tại ĐÂY.   
Chúc thành công!