簡體   English   中英

從鏈接中刪除file.html

[英]stripping file.html out of the link

因此,我正在編寫一個腳本,以闡明導航的不同部分。 每個導航鏈接都設置為/ directory / subdir /。 它一直起作用,直到我意識到需要做更多的事情為止。 如果您所在的目錄不是索引文件,則該目錄不起作用,因為它與HREF屬性直接匹配。 現在,我如何從鏈接中刪除filename.html並僅獲取目錄? 感謝您提供的所有幫助!

如果我沒有誤會,您正在嘗試突出顯示菜單鏈接

href="/dir/abc/"

而頁面地址類似於:

/dir/abc/index.shtml
/dir/abc/detail.shtml
/dir/abc/etc.shtml

對 ? 我已經對您的代碼進行了一些編輯。 希望這個幫助:

var loc = document.location.pathname;
var nav = $('.mainNav a');

nav.each(function(index, element) {
    var href = $(this).attr('href') //-- edited
    if (loc.indexOf(href)==0) {     //-- edited
        var node = nav.eq(index).parent('li');
        var gpnode = node.parents('li');
        node.addClass('active');
        gpnode.addClass('active');

    }
});
    /****** LINK DETECTION ******/


var nav = $('.mainNav a');
var loc = document.location.pathname;
var pathname = document.location.pathname.substring(1);
var parts = pathname.split(/\//);
var x = parts.length;
var hrefStr = "/"+parts[0]+"/"+parts[1]+"/";

switch (x) {
    case 2:
    $('.mainNav a').each(function(index, element) {
        if ($(this).attr('href') === loc) {
            var node = nav.eq(index).parent('li');
            var gpnode = node.parents('li');
            node.addClass('active');
            gpnode.addClass('active');
        }
    });
break;

default:

    $('.mainNav a').each(function(index, element) {
        if ($(this).attr('href') === hrefStr) {
            var node = nav.eq(index).parent('li');
            var gpnode = node.parents('li');
            node.addClass('active');
            gpnode.addClass('active');
        }
    });
}

/****** END LINK DETECTION ******/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM