簡體   English   中英

想要在一個特定頁面上使用不同的導航菜單...不起作用

[英]Would like a different nav menu on one specific page… not working

好吧,首先,我不太精通JS或PHP。 我通常可以更改現有腳本來執行我想要的操作,但是不能從頭開始編寫某些內容。 我在本示例中提到的所有URL都是偽造的。

考慮到這一點,我正在設計一個使用CSS,PHP和JS模板的頁面,這些模板我已經全部修改過了。 每個頁面都有一個頭文件,一個導航欄和一個頁腳,這些文件由include語句調用。 我了解那部分。 但是,在其中一個頁面上,我想要一個不同的導航欄,並且它不會改變。

我注意到的是:JS似乎將單擊的URL從例如http://www.example.com/test.php更改為http://www.example.com/#test.php

目的是什么? 另外...如果我在我想要新的導航欄的頁面上的URL中手動取出標簽,則會顯示新的導航欄! 但是,如果我切換頁面,它將以... test.php#newpage.php之類的URL結尾。

因此,我要么需要弄清楚如何對其進行修改以不將井號標記放在URL中(但是,如果有一個令人信服的原因,當然它可以保留),或者如何使該頁面顯示替代的導航欄-酒吧。 備用導航欄是一個目錄,因此html中包含#標簽,可以將用戶定向到頁面的特定部分……html中的那些#標簽可能會以某種方式發生沖突,這就是為什么它不會顯示出來,要么???

任何幫助,將不勝感激。

好的,這是javascript的一部分...這是它看起來像在URL中引用#的唯一部分:

    var $fadeWrapper = $("#fade-wrapper"),
    $allNav = $("#main-nav a"),
    $allListItems = $("#main-nav li"),
    url = '',
    liClass = '',
    hash = window.location.hash,
    $ajaxLoader = $("#ajax-loader");

$("body").attr("id", "");    

if (hash) {
    hash = hash.substring(1);
    liClass = hash.substring(0,hash.length-4);
    url = hash + " #inside-content";
    $fadeWrapper.load(url);
    $("." + liClass).addClass("active");
} else {
    $("#main-nav li:first").addClass("active");
}

* 更新:我決定完全刪除javascript。 通過閱讀,我得出的結論是,井號是存在的,因此腳本可以告訴哪個頁面處於活動狀態,以便CSS突出顯示導航欄中的一項。 它也與導航頁面時顯示的gif動畫有關。 這些項目中的任何一項都不足以讓我把更多的頭發拉出來,試圖找出這些東西。:D不過,謝謝您的建議! *

添加哈希標簽的可能性最大,因為您所單擊的鏈接的href值為#。

您是否只是創建一個新的頭文件(如果那是導航欄代碼所在的位置),修改導航欄在您的頭文件中的所需方式,然后在您想要不同的頁面上包含新文件而不是當前頭導航欄?

暫無
暫無

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

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