2011-05-16 180 views
0

我認爲你可以做選擇的風格元素:javascript選擇樣式標籤?

<style id="mystyle"></style> 

然後

$('#mystyle').remove() 

但沒有去。如何選擇js中的樣式?

謝謝。

+0

這應該工作...的風格標籤,我刪除..你期待從內部生成的樣式該樣式標籤被刪除?因爲我不認爲它是這樣工作的。例如:你有一個指向該風格標籤中的類的潛水,並且它是基於類規則進行風格化的......然後你回去並刪除該風格的標籤...我很確定div的標記將被保留... – 2011-05-16 00:32:26

+0

@蠟筆:從DOM中刪除樣式時不保留CSS。 – drudge 2011-05-16 00:38:36

回答

1

試試這個:

$('style[id=mystyle]').remove()

0

也許你可以試試這個解決方法嗎?

$("head").find("#mystyle") 

或者,回到基礎知識和使用舊學校的javascript:

document.getElementById("mystyle") 
3

style元素不能有id屬性,依據規範。

<!ELEMENT STYLE - - %StyleSheet  -- style info --> 
<!ATTLIST STYLE 
    %i18n;        -- lang, dir, for use with title -- 
    type  %ContentType; #REQUIRED -- content type of style language -- 
    media  %MediaDesc; #IMPLIED -- designed for use with these media -- 
    title  %Text;   #IMPLIED -- advisory title -- 
    > 

Source

但是,在實踐中,瀏覽器通常會讓你逃避這些事情。他們的實現可能會有所不同。

你有沒有考慮通過另一種方式選擇它?那麼$('head style:eq(1))

1

似乎工作在Firefox 4.x的罰款...

Live Demo

$('#mystyle1').remove(); 

$('style[id=mystyle2]').remove(); 

document.body.removeChild(document.getElementById('mystyle3'));