2017-01-25 6 views
0

ich die folgende Funktion ändern möchten schon, ich habe Dieser AusgangModify Funktion nach Benutzerplätzchen laufen

$_COOKIE['theme'] = contrast 

Wie zu ändern, um mit meiner Idee zu arbeiten?

<script type="text/javascript"> 
function setTypeLight(type) 
{ 
    $('body').removeClass('black'); 
    $('.wtop .account li.menu .menu_inner a.typelight').removeClass('light contrast'); 
    $('.wtop .account li.menu ul li').removeClass('act'); 

    switch (type) 
    { 
     case 'light': 
      $('.wtop .account li.menu .menu_inner a.typelight').addClass('light'); 
      $('.wtop .account li.menu ul a.typelight.light').parent('li').addClass('act'); 
     break; 

     case 'contrast': 
      $('body').addClass('black'); 
      $('.wtop .account li.menu .menu_inner a.typelight').addClass('contrast'); 
      $('.wtop .account li.menu ul a.typelight.contrast').parent('li').addClass('act'); 
     break; 
    } 

    ajaxLoad({id: '#', url: '/top/ajax.php?action=param&param=typelight&typelight=' + type + '&sessid=9e6c'}, {nprogress: 'N', type: 'null'}); 
} 

</script> 


<li><a href="?theme=light" onClick="setTypeLight('light'); return false;" class="typelight light">light</a></li> 

<li><a href="?theme=contrast" onClick="setTypeLight('contrast'); return false;" class="typelight contrast">contrast</a></li> 
+2

Warum würden Sie Java' Tag '!! – Null

+0

führen Sie es auf Dokument bereit, übergeben Sie den Cookie-Wert als Argument –

+0

Es kann einfacher sein, dynamisch zwischen zwei CSS-Dateien wechseln: http://StackOverflow.com/Questions/8796107/How-To-Make-changeable-themes-using -css-and-javascript – Jorg

Antwort

0

Sie Ihre Cookie erhalten anrufen und Ihre Funktion auf

Start rufen
function getCookie(cname) { 
    var name = cname + "="; 
    var decodedCookie = decodeURIComponent(document.cookie); 
    var ca = decodedCookie.split(';'); 
    for(var i = 0; i <ca.length; i++) { 
     var c = ca[i]; 
     while (c.charAt(0) == ' ') { 
      c = c.substring(1); 
     } 
     if (c.indexOf(name) == 0) { 
      return c.substring(name.length, c.length); 
     } 
    } 
    return ""; 
} 

$(function(){ 
    setTypeLight(getCookie('theme')); 
}); 
+1

Da das OP bereits jQuery verwendet ... 'setTypeLight ($. Cookie ('Thema'));' ... keine Notwendigkeit für Ihre Ausstechform: p –

+0

Nun ja, aber $ .cookie ist ein Plugin namens Jquery-Cookie, soweit ich weiß? Oder ist es jetzt Teil von jQuery Core? @JaromandaX –

+0

oh ... Entschuldigung, es ist ein Plugin - Ich habe einen schlechten jQuery Tag !! –