سلام
من از Regex زیر در تابع برای اکتیو کردن زیر منوی خودم استفاده می کنم
function HighlightCurrentMenu() {
var pageNameRegexp = /[a-z0-9-/_]+\.aspx/i,
path = location.pathname,
pageName,
menuWrapperSelector = "#topnav",
menuItemSelector = menuWrapperSelector + " ul li",
menuFirstLevelSelector = menuItemSelector.split(" ").join(" > "),
activeClassName = "active";
if (pageNameRegexp.test(path)) {
pageName = path.match(pageNameRegexp)[0];
$(menuItemSelector + "." + activeClassName)
.removeClass(activeClassName);
$(menuItemSelector + " > a[href=" + pageName + "]")
.parents(menuFirstLevelSelector)
.addClass(activeClassName);
}
}
اگه از لینک زیر استفاده کنم و به صورت زیر لینک دهی کنم تابع درست اجرا میشه:
<li class="active"><a href="/Administrator/Default.aspx">صفحه اصلی</a>
<ul>
<li class="last"><a href="/Administrator/Default.aspx">صفحه اصلی</a></li>
</ul>
</li>
حالا اگر بصورت زیر در برنامه استفاده کنم زیر منو ایجاد نمیشه.
<li class="active"><a href="../Administrator/Default.aspx">صفحه اصلی</a>
<ul>
<li class="last"><a href="../Administrator/Default.aspx">صفحه اصلی</a></li>
</ul>
</li>
فکر کنم مشکلم در دو نقطه ابتدایی برنامه هست (..) پطور باید این مشکل را برطرف کنم؟