2012-03-21 95 views
0

我試圖在管理區域,以一個簡單的小工具,我develpoing如添加簡單的jQuery功能:在jQuery的WordPress管理

jQuery("$id").show()jQuery("$id").hide()

功能,但它們都沒有工作。

誰能告訴我如何在WP管理區使用jQuery嗎?

回答

0

嘗試jQuery("#\\$id").show();jQuery("#\\$id").hide();

+0

爲什麼'#\\ $ id'? – m90 2012-03-21 07:30:52

+0

@ m90如果元素的'id'爲用於轉義特殊字符的'$ id',則使用兩個反斜槓。請查看[如何通過在CSS符號中使用字符的ID選擇元素?在jQuery常見問題] [1]:[1]:http://docs.jquery.com/Frequently_Asked_Questions#How%5Fdo%5FI%5Fselect%5Fan%5Felement%5Fby%5Fan%5FID%5Fthat%5Fhas%5Fcharacters%5Fused %5Fin%5FCSS%5Fnotation.3F – tusar 2012-03-21 09:00:44

+0

感謝您的幫助,但我似乎在我的問題中犯了一個錯誤,jQuery選擇器應該是jQuery(「#id」)而不是jQuery(「id」),對不起爲此 – user1282688 2012-03-21 14:33:19

0

有兩個可能的問題在這裏。首先可能是你以奇怪的方式選擇了ID。通常你會在jQuery中通過ID選擇一個元素,就像在CSS中使用# -prefix一樣,例如:$('#id').show()$('#id').hide()。如果你知道這一點,並只是在$id存儲一個CSS選擇器,你已經很好。

第二件事,很多人苦惱的是,你的jQuery必須等待DOM準備好才能真正生效(如果它在DOM準備好之前被執行,所有選擇都將爲空)。爲了得到這個工作,你通常包裝你的代碼在$(document).ready章24 -listener:

$(document).ready(function(){ 
$('#id').fadeIn('slow'); 
}); 

這樣的處理函數內的所有代碼將等待,直到它被執行前的DOM已準備就緒。

在一個側面說明:如你所說show()hide()作爲你的例子,你可能也有興趣在toggle()http://api.jquery.com/toggle/

+0

在wordpress管理面板中,這不起作用,在前端工作正常,但不在管理面板。 – user1282688 2012-03-21 16:17:02

+0

問題是來自窗口小部件的每個元素都必須有一個類,而不是一個ID。似乎wordpress正在做某種魔術並阻止你的腳本做任何事情,而他們正在做的正確,因爲在側邊欄上有兩個相同的小部件呢?你會有相同的名稱,這不是很好。 – TGeorge 2014-08-30 05:30:15

0

如果你有一個ID喜歡

<div id="myId"></div> 

一個元素,那麼你可以選擇你的div爲

jQuery("#myId").show();