Avatar billede jara06 Nybegynder
14. januar 2007 - 01:54 Der er 4 kommentarer og
1 løsning

Er det her smart?

Halløj og godaften!

Jeg kan ikke helt regne ud, om det her er smart...
Idéen er, at jeg har et textarea på en side, og så vil loade/save indholdet i en cookie.

Nedenstående fungere i IE og FF

<html>
<head>
<script type="text/javascript"><!--
function set_c(name, value, expires, path, domain, secure) {
    var today = new Date();
    today.setTime(today.getTime());

    if (expires) {
        expires = expires * 1000 * 60 * 60 * 24;
    }
    var expires_date = new Date(today.getTime() + (expires));

    document.cookie = name + "=" +escape(value) +
    ((expires) ? ";expires=" + expires_date.toGMTString() : "" ) +
    ((path) ? ";path=" + path : "" ) +
    ((domain) ? ";domain=" + domain : "" ) +
    ((secure) ? ";secure" : "" );
}


function get_c(name) {
    var start = document.cookie.indexOf( name + "=" );
    var len = start + name.length + 1;
    if ((!start) && (name != document.cookie.substring( 0, name.length ))) {
        return null;
    }
    if ( start == -1 ) {
        return null;
    }
    var end = document.cookie.indexOf(";", len);
    if ( end == -1 ) {
        end = document.cookie.length;
    }
    return unescape( document.cookie.substring(len, end));
}

function del_c(name, path, domain) {
    if ( get_c( name ) ) document.cookie = name + "=" +
    ( ( path ) ? ";path=" + path : "") +
    ( ( domain ) ? ";domain=" + domain : "" ) +
    ";expires=Thu, 01-Jan-1970 00:00:01 GMT";
}



function c_loadText(id, name) {
    var tmp = get_c(name);
    if (tmp != null) {
        var el = document.getElementById(id);
        if (typeof(el.value) != "undefined")
            el.value=tmp;
        else if (typeof(el.innerHTML) != "undefined")
            el.innerHTML = tmp;
    }
}

function c_saveText(id, name) {
    var c_name = (typeof(name) == "undefined" ? 'savedtext' : name);
    var c_text = document.getElementById(id).value;
    c_text = (typeof(c_text) == "undefined" || c_text == '' ? document.getElementById(id).innerHTML : c_text);
   
    if (typeof(c_text) == "undefined" || c_text == '') {
        return false;
    }
    set_c(c_name, c_text);
}

function initTextSave(id, name) {
    if (id != null && name != null && document.getElementById(id) != null) {
        c_loadText(id, name);
        window.onunload = function goSave() {
            c_saveText(id, name);
        }
    }
}
-->
</script>
</head>
<body>

<textarea id="mingemtetext" rows="10" cols="20">standard tekst</textarea>
<script type="text/javascript"><!--
initTextSave('mingemtetext', 'cookietextname');
--></script>
</body>
</html>

Comments?
Avatar billede roenving Novice
14. januar 2007 - 12:52 #1
Tjah, bortset fra, at koden er tudsegmmel, og kan optimeres en smule ved at bruge split på cookien, er der ingen grund til at ændre !-)

If it ain't broken, don't fix it !o]
Avatar billede jara06 Nybegynder
14. januar 2007 - 12:55 #2
True :)

Jeg tror jeg vil forsøge mig med det og se hvad brugerne siger..

Smid svar hvis du vil. Thx. :)
Avatar billede roenving Novice
14. januar 2007 - 13:17 #3
Oki '-)
Avatar billede roenving Novice
14. januar 2007 - 13:29 #4
-- og tak for point ;~}
Avatar billede jara06 Nybegynder
14. januar 2007 - 13:31 #5
np. Er glad for lige at få second thought på idé'en :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester