web sitesi adresinizin www.tersduz.com/icerik.aspx olduğunu farz edin bu
elimizdeki javascript kodu bize icerik.aspx sayfa adının dönmesini sağlamakta.
var sPath = window.location.pathname;
//var sPage = sPath.substring(sPath.lastIndexOf('\\') + 1);
var sPage = sPath.substring(sPath.lastIndexOf('/') + 1);
Aşağıdaki kodlarda örneğin bir master page sahibim ve bu master page içerisinde
<ul>
<li><a id="anasayfa"
href="default.aspx" class="current">Ana
Sayfa</a></li>
<li><a id="matematikdersleri"
href="dersler.aspx">Matematik Dersleri</a></li>
<li><a id="siteharitasi"
href="siteharitasi.aspx">Site Haritası</a></li>
<li><a id="katkidabulunanlar"
href="katkida_bulunanlar.aspx">Katkıda Bulunanlar</a></li>
<li><a id="okulumuz"
href="http://www.cumhuriyetioo.edu.tr">Okulumuz</a></li>
</ul>
eğer kullanıcı sayfalar birisine tıkladığında örneğin dersler.aspx sayfasına
tıkladığında current classının anasayfadan gidip matematikderslere geçmesi
gerekli bunun için geliştirmiş olduğum
javascrip kodu şöyle oldu.
<script type="text/javascript">
$(document).ready(function () {
var sPath = window.location.pathname;
//var sPage = sPath.substring(sPath.lastIndexOf('\\')
+ 1);
var sPage = sPath.substring(sPath.lastIndexOf('/') +
1);
if (sPage == "") {
$("#anasayfa").addClass("current");
$("#matematikdersleri").removeClass("current");
$("#siteharitasi").removeClass("current");
$("#katkidabulunanlar").removeClass("current");
$("#okulumuz").removeClass("current");
}
else if (sPage == "dersler.aspx") {
$("#anasayfa").removeClass("current");
$("#matematikdersleri").addClass("current");
$("#siteharitasi").removeClass("current");
$("#katkidabulunanlar").removeClass("current");
$("#okulumuz").removeClass("current");
}
else if (sPage == "siteharitasi.aspx") {
$("#anasayfa").removeClass("current");
$("#matematikdersleri").removeClass("current");
$("#siteharitasi").addClass("current");
$("#katkidabulunanlar").removeClass("current");
$("#okulumuz").removeClass("current");
}
else if (sPage == "katkida_bulunanlar.aspx") {
$("#anasayfa").removeClass("current");
$("#matematikdersleri").removeClass("current");
$("#siteharitasi").removeClass("current");
$("#katkidabulunanlar").addClass("current");
$("#okulumuz").removeClass("current");
}
});
</script>
Eğer menunuz programatik olarak üretiliyorsa örenğin bir repater içerisinde
üretilen ul-li yapısı gibi
<asp:Repeater ID="menu_rpt" runat="server"
DataSourceID="sqlkaynak3">
<HeaderTemplate>
<li><a href="default.aspx" id="menu00"
class="current"><span></span>Anasayfa</a></li>
</HeaderTemplate>
<ItemTemplate>
<li><a href='<%# "konsol.aspx?kategori=" + Eval("id") + "&konsol=" + Eval("adi")
%>' id='<%# "menu" + Eval("id") %>'><span></span><%# Eval("adi") %></a></li>
</ItemTemplate>
</asp:Repeater>
ozaman jquery kodlarımız asp.neet için şöyle olmalı
<script type="text/javascript">
$(document).ready(function () {
var secili = "menu" + '<%= lblsecilioge.Text %>';
if (secili != "menuanasayfa") {
$("#" + secili + "").addClass("current");
$("#menu00").removeClass("current");
}
else {
$("#menu00").addClass("current");
}
});
</script>
buradaki lblsecilioge.Text içeriği ise görünmeyen bir textbox olup içi söylece
dolduruluyor.
string secili = Request.QueryString["kategori"].ToString();
lblsecilioge.Text = secili;
Hiç yorum yok:
Yorum Gönder