2013-07-25 18 views
0

因此,根據我的標題問題,如何刪除樣式標籤內的所有元素。如何刪除JavaScript中的<style>標記中的所有元素?

我身上有風格標籤。我只是檢索HTML代碼。

<body> 
<style> 
    td {...}; 
    a {....}; 
</style> 
<body> 

我已經單獨刪除樣式標籤。但不是它裏面的元素。 我仍然可以檢索:

<body> 
    td {...}; 
    a {....}; 
<body> 

我還需要刪除提前

td {...}; 
a {....}; 

謝謝!

+0

您可以使用DOM工具查詢和刪除樣式標籤。在這裏檢查https://developer.mozilla.org/en-US/docs/Web/API/Document – elclanrs

+4

你想要做什麼?問題並不清楚,它看起來像你試圖刪除一個html元素。爲什麼要放在首位? –

+0

什麼是style5標籤? –

回答

3

如果你想去除體內所有的CSS元素,你可以這樣做:

var x = document.body.getElementsByTagName("style"); 
for (var i = x.length - 1; i >= 0; i--) 
    x[i].parentElement.removeChild(x[i]); 

如果你試圖刪除只是在身體的第一個:

var x = document.body.getElementsByTagName("style"); 
if (x.length) 
    x[0].parentElement.removeChild(x[0]); 

編輯:刪除方法使用map。瘋狂的火車正確地指出,它可能不會工作。

+0

恐怕你的'.map()'解決方案不會那麼簡單。因爲您要從DOM中刪除元素,所以它們也將從'HTMLCollection'中移除,這意味着將會跳過索引。 –

+0

我認爲'for'循環,但不知道'map'編譯到什麼地方。循環肯定是更好的方法。 –

+0

是的,for循環是絕對正確的。 –

0

您正在嘗試刪除HTML元素。你能做到這樣,假設標籤的文檔中的唯一一個

(var styleElt=document.getElementsByTagName('style')[0]).parentNode.removeChild(styleElt) 
0

如果你的項目使用jQuery你可以輕鬆地與腳本的一個非常短位刪除樣式標籤的內容:

$(document).ready(function() { 
    $('style').html(""); 
}); 

這是jsFiddle顯示它的工作原理。

相關問題