2016-03-28 12 views
0

Ich fand diese Geige aus anderen Fragen, und es ist gut zu bedienen. Das Problem ist die hinzugefügte Klasse (.active) in der Schaltfläche remove beim Aktualisieren. Wie kann ich es bleiben lassen? Ich lade es neu.bleiben Klasse nach der Aktualisierung

FIDDLE

HTML

<div class="flr-wrap"> 
<ul> 
    <li><a class="button active" data-rel="#content-a" href="#">a button</a></li> 
    <li><a class="button" data-rel="#content-b" href="#">b button</a></li> 
</ul> 

<div class="flr-inner"> 
    <div class="container" id="content-a"> 
     AAA 
    </div> 
    <div class="container" id="content-b"> 
     BBB 
    </div> 
</div> 

JS

// set content on click 
$('.button').click(function(e) { 
    e.preventDefault(); 
    setContent($(this)); 
}); 

// set content on load 
$('.button.active').length && setContent($('.button.active')); 

function setContent($el) { 
    $('.button').removeClass('active'); 
    $('.container').hide(); 

    $el.addClass('active'); 
    $($el.data('rel')).show(); 
} 

Vielen Dank im Voraus ..

+0

ist dies in einem '$ (document) .ready()' verpackt? –

+0

Sie müssen den Status irgendwo speichern, wenn Sie einen lokalen Zustand verwenden möchten, dann können Sie über 'localStorage' nachdenken. –

+0

Das Web ist zustandslos. – Fergus

Antwort

1

Sie müssen den aktiven Zustand entweder in dem Server gespeichert werden (wenn es eine Möglichkeit, dies zu tun) oder in der Client-Seite

speichern es in Client-Seite

(können Sie Web-Speicher verwenden)
// set content on click 
$('.button').click(function(e) { 
    e.preventDefault(); 
    setContent($(this)); 
    localStorage.setItem('active-container', $(this).data('rel')); 
}); 

// set content on load 
localStorage.getItem('active-container') && setContent($('.button[data-rel="' + localStorage.getItem('active-container') + '"]')); 

function setContent($el) { 
    $('.button').removeClass('active'); 
    $('.container').hide(); 

    $el.addClass('active'); 
    $($el.data('rel')).show(); 
} 
+0

http://jsfiddle.net/arunpjohny/scLuxs01/ –

+0

Wie kann ich es machen die Schaltfläche ist nicht aktiv und der Inhalt wird nicht in der ersten Last angezeigt, habe ich versucht, Ihre Arbeit zu bearbeiten, aber es funktioniert nicht –

+0

Sir danke Sie... –

Verwandte Themen