divのアクティブなクラスをページリロードに保存できません。最初のdivのボタンをクリックしてアクティブなクラスを削除し、アクティブ。しかし、ページが2番目のdivにリロードされたときに、ページがリロードされたときに2番目のdivのアクティブなクラスを保存する方法。私はローカルストレージを使用してみましたが、私はそれを知らない。ページがあるときに、これはあなたがのlocalStorageのインデックス内の要素の再設定active
クラス、代わりに全体のjQueryオブジェクトの、ローカルストレージにアクティブのdivのindex
を格納し、することができます達成するためにローカルストレージを使用してページをリロードするときにdivのアクティブなクラスを保存する方法
<div class="divs active" id="first">
<h1> first div</h1>
<a class="btn-link" href="javascript:void(0);" id="btn-first">Next - 2</a>
</div>
<div class="divs" id="second">
<h1> second div</h1>
<a class="btn-link" href="javascript:void(0);" id="btn-second"/>Next -3 </a>
</div>
<div class="divs" id="third">
<h1> third div</h1>
<a class="btn-link" href="javascript:void(0);" id="btn-third"/>Next -1</a>
</div>
<script>
$(document).ready(function(){
$('#btn-first').click(function(){
$('.divs').removeClass('active');
var activeID = $('#second').addClass('active');
console.log(activeID);
localStorage.setItem("activeDIV", activeID);
//var reloadactiveDIV = localStorage.getItem("activeDIV");
// var activeID = $('#second');
// localStorage.setItem('activeTab', $activeID);
// var activeTab = localStorage.getItem('activeTab');
// if (activeTab) {
// $('.divs').removeClass('active');
// $('#second').addClass('active');
// }
});
$('#btn-second').click(function(){
$('.divs').removeClass('active');
$('#third').addClass('active');
});
$('#btn-third').click(function(){
$('.divs').removeClass('active');
$('#first').addClass('active');
});
});
</script>
私は、localStorageの代わりにsessionStorageを使用することをお勧めします。セッション記憶域プロパティは、ページの再ロードおよびリストアを含む、ブラウザが開いている限り、ページセッションの持続時間に利用可能な、所与の各起点のための別個の記憶領域を維持する。ローカルストレージは同じことをしますが、ブラウザが閉じられていても開いていても保持されます。 –
あなたは正しいですが、私はそれを好みの問題として見ません。どのくらいの期間、データを保存する必要があるか –