這段代碼應該從ul中間點擊一個點擊的錨點標記獲得id,然後使用id爲整個頁面的其他目的,但警報告訴我,我一直得到'未定義',就好像該元素沒有身份證。我仔細檢查我的源代碼,他們確實有ID,所以我不確定問題是什麼。請幫我修復這個jquery函數,並找出Javascript禁用的情況下的後備
$(function() {
$('ul#links > li > a').click(function() {
var planet = $(this).id;
alert(planet);
$('#planet').removeClass();
$('#planet').addClass('planet');
var bg = 'black url(../img/' + planet + '.jpg) fixed no-repeat center';
alert(bg);
$('body').css('background', bg);
});
});
另外這個jquery函數被用作Javascript處理這種情況的方式。我已經實現了一個PHP解決方案,其中包括被重定向到一個快速腳本,該腳本設置了一個cookie並將用戶返回到上一頁,然後使用該cookie加載新的CSS。有沒有辦法在JS被禁用的情況下使用該方法作爲JS方法的備份?
頁 - http://schnell.dreamhosters.com/folio/
那麼每個人的編輯工作,以獲得正確的ID。現在問題似乎是,即使我得到正確的ID並執行addClass或更改身體的背景w/CSS後,沒有任何更改。順便說一句,最後的'返回虛假'。這是否意味着如果這個函數失敗(意味着JS關閉),那麼鏈接將默認爲href屬性並且遵循那個? – 2010-01-28 22:28:34
難道是因爲修改後的CSS需要具有相對於html頁面的圖像路徑,而不是css文件的位置?檢查從Web服務器或Web服務器日誌獲取的404錯誤響應。 – 2010-01-28 22:35:26
你說得對,路徑已經解決了。但現在我的另一個問題是,addClass()函數似乎沒有工作。在我的CSS表格中有類:.earth {color:#2020FF;},.neptune {color:#4169E1;},.moon {color:#E4E4E4;}。添加/刪除它們的目的僅僅是改變中心圖像附近的div框中文本的顏色。 – 2010-01-28 22:48:59