Вот моя проблема, у меня есть список элементов меню, не использующих runat = "server", поэтому моя страница по умолчанию имеет URL-адрес, например localhost/Default.aspx, если i запустите его в visual studio, мой javascript найдет мою текущую страницу, которая является «Default.aspx», и выделит текущий пункт меню, все отлично работает на этом этапе.Javascript не выделяет меню при первом посещении сайта
Теперь, если я публикую свой сайт с помощью ftp, первый раз, когда я буду на этом сайте, на сайте будет указатель localhost, без Default.aspx в конце, теперь мой javascript не найдет «Default.aspx», на моей странице и вместо этого вернется "", поэтому мой пункт меню не будет выделен. Если я нажимаю на главную страницу в своем меню, url становится localhost/Default.aspx, и меню становится подсвеченным.
Так есть способ изменить мой javascript, поэтому в первый раз, когда я нажму на этот сайт, он все равно выделит мое меню, хотя мой url не содержит «Default.aspx» в конце?
Вот мой JavaScript»
$(function() {
var url = window.location.href.substr(window.location.href.lastIndexOf("/") + 1);
$('[href$="' + url + '"]').parent("li").addClass("current_page_item");
});
Как вы можете видеть, если я использую
<a runat="server" href="~/">Home</a>
на моей домашней странице, то
lastIndexOf("/")
в моей JavaScript всегда будет возвращать мне пустое, и поэтому ничего не подсвечивается, я знаю, где проблема, но не могу найти способ исправить это
Благодаря
HTML:
1.Main меню
<div id="menu" class="container">
<ul>
<li class="current_page_item"><a runat="server" href="~/" accesskey="1" title="">Home</a></li>
<li><a href="Softcare/SoftcareHome.aspx" accesskey="2" title="">Softcare</a></li>
<li><a href="Softlearn/SoftlearnHome.aspx" accesskey="2" title="">Softlearn</a></li>
<li><a href="Software/SoftwareHome.aspx" accesskey="2" title="">Software</a></li>
</ul>
</div>
2.sidemenu
<div id="sidemenu">
<div class="section-title">
<asp:ContentPlaceHolder ID="submenutitle" runat="server">
</asp:ContentPlaceHolder>
</div>
<ul>
<li><a runat="server" href="~/" accesskey="1" title="">Home</a></li>
</ul>
</div>
Благодаря Maverick, однако она до сих пор не освещающие, родитель url "~ /" ничего – Mindless
вы можете разместить html ваше меню – Maverick
Я добавил его в свой вопрос – Mindless