2010-07-22 65 views
2

爲選擇菜單創建過濾器並出現一些問題!刪除作品,但不隱藏?

第一個是

$("#filterContentMenu option:contains(a)").hide(); 

不工作,但

$("#filterContentMenu option:contains(a)").remove(); 

一樣。

其實這似乎只是在safari中的問題!在Firefox中工作?

+0

當您檢查它們時,Safari中的元素看起來像什麼(他們的CSS是什麼?) – Maz 2010-07-22 14:19:18

+0

這是一個可能的副本:http://stackoverflow.com/questions/2324250/style-displaynone-doesnt-work-on -option-tags-in-chrome-but-it-in-in-firefox – 2010-07-22 14:19:44

回答

6

.hide()將元素的display設置爲none。您無法將<option>設置爲display: none,它不適用於所有瀏覽器。你可以將其刪除,並保留對它們的引用,但:

var removed = $("#filterContentMenu option:contains(a)").remove(); 

// later that day... 
removed.appendTo("#filterContentMenu"); 
+0

很煩人!歡呼傢伙! – v3nt 2010-07-22 15:46:47

1

「隱藏」(設置爲display: none)選項並不在多個瀏覽器很好的支持。最好刪除並重新創建它們。