sg.programmer
دوشنبه 29 دی 1393, 17:09 عصر
سلام
من از 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>
فکر کنم مشکلم در دو نقطه ابتدایی برنامه هست (..) پطور باید این مشکل را برطرف کنم؟
من از 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>
فکر کنم مشکلم در دو نقطه ابتدایی برنامه هست (..) پطور باید این مشکل را برطرف کنم؟