2013-04-25 77 views
0

我正在嘗試爲網站製作導航菜單。懸停事件(jQuery)更改<div>背景位置,以便用戶可以看到他指向的位置。最終的效果我想實現這個樣子的:使用jQuery更改每個頁面上的CSS屬性

http://jsfiddle.net/WAckU/

這種解決方案的問題是,當我點擊<li>(頁面更改)我鬆散的變量(背景位置復位),所以我不知道是否有是任何解決方法,也許只是添加CSS類到我點擊的元素(類似於一些WordPress主題)? 我也想避免堅持cookie的價值。

+0

這取決於你的網站的後臺能夠。 Wordpress運行在PHP上,它有一組工具可以將一個「活動」類分配給一個依賴於被點擊的元素,就像其他技術一樣。沒有使用Ajax,Json和/或Cookies的情況下,無法在普通JavaScript的兩頁之間持續存在。 – Kyle 2013-04-25 15:16:03

+0

啊,忘了提。我可以使用PHP的課程。 – 2013-04-25 15:21:14

+0

當然,你也可以在靜態頁面上僞裝它,只需將該類添加到HTML中的活動元素或設置它的jQuery .. – Kyle 2013-04-25 15:24:35

回答

0

檢查中window.location.href當前頁面,並設置背景圖片首先取決於它

var currentpage = window.location.href.split("/").pop(); 
switch(currentpage){ 
    case "page1.php": $(".topmenu").css('background-position', position1);break; 
    case "page2.php": $(".topmenu").css('background-position', position2);break; 
    ... 
} 
+0

這是完美的,非常感謝你:) – 2013-04-25 16:15:01

0

爲什麼不簡單地將變量初始化爲每頁所需的值?或者,如果你不想讓例外,請讓js查看網址以找出它的位置。

+0

頁面由幾個部分組成(它構建在電子商務系統上),所以我現在不用如果爲每個頁面創建一個變量會很聰明。檢查網址似乎是一個更好的選擇。 Thx,會試着找到更多關於它的信息。 – 2013-04-25 15:32:44