Home > Web Front-end > JS Tutorial > body text

Memorable style switching effect code download using cookies_javascript skills

WBOY
Release: 2016-05-16 19:07:06
Original
959 people have browsed it

The main codes used in the sample code example of switching styles without refreshing cookies

Copy the code The code is as follows:




styleswitcher script Home-www.jb51.net



< style>





red
blue


left








styleswitcher .js
Copy code The code is as follows:

// styleswitcher.js

function setActiveStyleSheet(title)
{
    var i, a, main;

    for(i = 0; (a = document.getElementsByTagName("link")[i]); i )
    {
        if (a.getAttribute("rel").indexOf("style") != -1 && 
            a.getAttribute("title"))
        {
            a.disabled = true;

            if (a.getAttribute("title") == title) 
                a.disabled = false;
        }
    }
}

function getActiveStyleSheet()
{
    var i, a;

    for(i = 0; (a = document.getElementsByTagName("link")[i]); i )
    {
        if(a.getAttribute("rel").indexOf("style") != -1 && 
           a.getAttribute("title") && ! a.disabled)
            return a.getAttribute("title");
    }

    return null;
}

function getPreferredStyleSheet()
{
    var i, a;

    for (i = 0; (a = document.getElementsByTagName("link")[i]); i )
    {
        if(a.getAttribute("rel").indexOf("style") != -1 &&
           a.getAttribute("rel").indexOf("alt") == -1 &&
           a.getAttribute("title"))
            return a.getAttribute("title");
    }

    return null;
}

function createCookie(name, value, days)
{
    if (days)
    {
        var date = new Date();
        date.setTime(date.getTime()   (days * 24 * 60 * 60 * 1000));
        var expires = "; expires="   date.toGMTString();
    }

    else expires = "";
    document.cookie = name   "="   value   expires   "; path=/";
}

function readCookie(name)
{
    var nameEQ = name   "=";
    var ca = document.cookie.split(';');

    for (var i = 0; i < ca.length; i )
    {
        var c = ca[i];

        while (c.charAt(0) == ' ')
            c = c.substring(1, c.length);

        if (c.indexOf(nameEQ) == 0)
            return c.substring(nameEQ.length, c.length);
    }

    return null;
}

window.onload = function(e)
{
    var cookie = readCookie("style");
    var title = cookie ? cookie : getPreferredStyleSheet();

    setActiveStyleSheet(title);
}

window.onunload = function(e)
{
    var title = getActiveStyleSheet();

    createCookie("style", title, 365);
}

var cookie = readCookie("style");
var title = cookie ? cookie : getPreferredStyleSheet();
setActiveStyleSheet(title);

red.css
Copy code The code is as follows:

#left                                   right;}

red.css
Copy code The code is as follows:

#left { background-color:#FF0000;float:left; }
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template