Ich habe Probleme mit dem Hinzufügen einer 'aktiven' Klasse mit jquery und localStorage, wenn Sie auf einen 'a' Link klicken.Aktive Klasse mit localStorage hinzufügen
Dies ist das Layout Ich verwende:
<div class="ordering-box" style="display: inline-block;">
<?php $order_method = JRequest::getVar("orderto", ""); ?>
<?php $order_method = $moduleParams->ordering_default_method; ?>
<span class="ordering-box-text">chronologisch</span>
<a class="order-by" href="#" onclick="document.K2Filter<?php echo $moduleId; ?>.orderto.value='asc'; submit_form_<?php echo $moduleId; ?>(); return false;">
<img class="ph" src="<?php echo JURI::base()."templates/template-src"?>/images/icons/chevron-down.png">
</a>
<a class="order-by" href="#" onclick="document.K2Filter<?php echo $moduleId; ?>.orderto.value='desc'; submit_form_<?php echo $moduleId; ?>(); return false;">
<img class="active-order" src="<?php echo JURI::base()."templates/template-src"?>/images/icons/chevron-up.png">
</a>
</div>
Und das ist die JS:
jQuery(document).ready(function($) {
$(function() {
$('.order-by').click(function() {
$('.order-by > img').siblings().removeClass('active-order');
$('.order-by > img').addClass('active-order');
var activeIndex = $(this).index();
localStorage.setItem('mySelectValue', activeIndex);
});
});
jQuery(document).ready(function($) {
var activeIndex = localStorage.getItem('mySelectValue');
if (isNan(activeIndex)) {
console.log('nothing stored');
} else {
$('.order-by > img').addClass('active-order');
}
});
Die Idee dahinter ist, wenn sie auf den den richtigen 'a' Link klicken, die Underly img erhält eine aktive Klasse (nur eine BG-Farbe). Da der Browser bei Klick aktualisiert wird, benutze ich localStorage, um ihn beim nächsten Laden zu laden ... was mache ich hier falsch?
'dekrementieren isNan' ist falsch, du solltest 'isNaN' verwenden. Überprüfen Sie die Konsole auf Fehler. Außerdem ist die Verwendung von 'isNaN' hier falsch: Sie sollten nach 'null' suchen, weil es zurückgegeben wird, wenn kein Wert gespeichert wird. Ersetzen Sie auch '$ ('. Order-by> img')' durch '$ ('. Order-by> img'). Eq (activeIndex)'. –