2013-04-03 17 views
6

Sayfayı yenilerken seçilen menüyü vurgulamak için bir görevim var. Bunun için çerez kullanmak istiyorum. html koduBir div’in kimliğini çerez olarak nasıl belirleyebilirim?

<div class="menuBar"> 
      <div class="menuHeader ui-corner-top"> 
      <span><a href="#" onclick="Home()" id="home">Home</a></span> 
      </div> 
      <div class="menuHeader ui-corner-top"> 
      <span><a href="#" onclick="NewTransaction()" id="newtransaction">New Transaction</a></span> 
      </div> 
</div> 

JavaScript dosyası

function Home() { 
      window.location.href = "../../home/welcome"; 
     } 
     function NewTransaction() { 
      window.location.href = "../../EnergyCatagory/index"; 
     } 

olduğu Ama seçilen menünün değer iletebilirsiniz onun değil iyi bir way.How selected.But gibi menü ayarlamak için bir kod var yenilenirken sayfaya mı? bu menüyü olarak jQuery kullanarak cookises ayarlamak için

$(document).ready(function() { 
       var currentUrl = window.location.href; 
       if (currentUrl.indexOf("home/welcome") !== -1) { 
        $("#home").parent().parent().addClass('menuHeaderActive'); 
       } 
       else if (currentUrl.indexOf("EnergyCatagory/index") !== -1) { 
        $("#newtransaction").parent().parent().addClass('menuHeaderActive'); 
       } 
       else if (currentUrl.indexOf("portfolio/Index") !== -1) { 
        $("#portfolio").parent().parent().addClass('menuHeaderActive'); 
       } 
      }); 
+0

, herhangi bir kod olabilir "non semantik" ? Benim için cevap hayır. Bir dağ, bir çamaşır sepeti olduğu gibi semantik değildir. – Niths

+0

@MatthewAgustin @MatthewAgustin kodumu düzenlenmiş –

cevap

2

Böyle bunu uygulayabilirsiniz:

html
function goToLocation(sLocation, id) { 
    $.cookie("activediv", id); 
    window.location.href = sLocation; 
} 

:

hazır jQuery
<a href="#" onclick="goToLocation('../../home/welcome', 'home')" id="home">Home</a> 

:

$('#' + $.cookie("activediv")).parent().parent().addClass('menuHeaderActive'); 
+0

bu TypeError gibi bir hata var @ ChrisMoutray- İşte: $ .cookie [Bu On Error kırın] bir işlev değil \t var a = ($ kurabiye. ("activediv")); Ama ben cookie eklentisi var Niths

+0

@ victor-İşte Bu TypeError gibi bir hata aldım : $ .cookie bir işlev değil [Bu Hatası Onayla] var a = ($. cookie ("activediv")); Ama ben cookie eklentisi var Niths

+0

jQuery ile çerez hakkında bağlantı aşağıda yorumdadır. Bazı sonuçları derlemek için sadece bilginizi ve çerez hakkındaki bilgileri kullanıyorum. – Victor

4

her menü öğesi için id verin.

Daha sonra, menü öğesinin onclick() işlevinde bu kimliği çerez olarak ayarlayın.

document.ready fonksiyonunda

$.cookie("selectedId", $(this).attr('id')); 

çerezi elde edilen kimlikli elemana sınıf seçilmiş ekleyin

Set çerez

Ben
İlgili konular