我有以下腳本:自我。主動菜單項
(function($) {
$.fn.MenuAutoActive = function() {
var menus = $('ul li a');
//menus.removeClass('active');
var matches = menus.filter(function() {
return document.location.href.indexOf($(this).attr('href')) >= 0;
});
matches.addClass('active');
};
什麼ID的作用:
- 它遍歷所有UL>李列表中搜索 '一'
- 檢查「在 'For 'HREF'
- 如果HREF =當前的URL將其添加class'active' 它
我與它唯一的問題,它只是看起來在href的最後一位:
例如:主菜單將是:
<ul>
<li><a href="index.html"></a></li>
<li><a href="Services/index.html"></a></li>
<li><a href="Portfolio/index.html"></a></li>
<li><a href="Conact/index.html"></a></li>
</ul>
URL = http://www.website.com/Services/
在這種情況下腳本不會標記爲<a href="Services/index.html"></a>
,因爲該網址不包含index.html。
我該如何在URL的最後一個位置(last /之前)和最後一個位置之前(最後一個位置)查看?
任何幫助非常感謝!
皮特
你有意使用相對路徑嗎?絕對路徑會很容易。 –
基本上,將會有類別(例如課程類別)爲10(50-60)個子頁面 - 通過這個腳本+ 將更容易更新網站一個額外的子頁面。如果我把它全部放在一個文件夾中,並且沒有自動激活 - 我必須手動完成 - 這需要幾個小時。 –
Iladarsda
此外,還會有兩種類型的菜單,一種在頂部(白色類別 - 主菜單),另外還有左側菜單,其中包含當前類別的子頁面。腳本可以在左側菜單中正常工作(因爲沒有分類URL的短路徑),每個分類的每個頁面上的TOP菜單都是相同的 - 而且當前的腳本不適用於它 - 因爲它只能看到最後一塊網址。 – Iladarsda