未定義我想建立CSS顯示屬性中的JavaScript代碼:的JavaScript element.style在FF
var div = document.createElement('div'); div.innerHTML = content; div.childNodes[0].style.display = '';
它可以在IE瀏覽器,但在FF沒有。它說「樣式」未定義元素div。我如何在FF中做到這一點?
感謝
未定義我想建立CSS顯示屬性中的JavaScript代碼:的JavaScript element.style在FF
var div = document.createElement('div'); div.innerHTML = content; div.childNodes[0].style.display = '';
它可以在IE瀏覽器,但在FF沒有。它說「樣式」未定義元素div。我如何在FF中做到這一點?
感謝
什麼是content
?如果它以空格開頭,那麼將會有一個TextNode作爲第一個孩子,並且它們沒有樣式屬性(HTMLElementNodes做)。
您可以:
content
createElement
和朋友,而不是的innerHTML
感謝您的回覆,內容是HTML代碼,但似乎以空格開頭。 – ihorko 2010-12-20 17:49:13
另外,元素遍歷規範http://www.w3.org/TR/ElementTraversal/定義了像'firstElementChild'這樣的屬性。雖然我不知道瀏覽器兼容性 – 2010-12-20 18:23:39
這也應該工作:
var div = document.createElement('div');
div.innerHTML = content;
div.childElementCount && div.firstElementChild.style.display = '';
'div.childNodes [0]'是什麼樣的節點? – Pointy 2010-12-20 17:40:56