2012-07-18 72 views
2
<span id='a'><img src='b.gif' /></span> 
<script> 
alert(document.getElementById('a').innerHTML); 
</script> 


的輸出是:<img src="b.gif" />爲什麼單引號顯示爲雙引號?

'b.gif' 被示出爲 「b.gif」

查看在螢火蟲的源代碼也顯示雙引號。這是爲什麼發生?

+1

Firebug呈現DOM結構本身。可能他們總是使用雙引號。只需檢查生成的HTML代碼(右鍵單擊>查看源代碼)。 – Styxxy 2012-07-18 19:11:02

回答

2

雙引號是屬性的標準,單引號顯然可以接受。

innerHTML是處理的標籤集合,所以正如已經指出瀏覽器將設置用雙引號作爲標準

的屬性,沒有「標準」,當涉及到雙或單引號在屬性上。

我的猜測應該是瀏覽器默認使用雙引號,因此當您請求innerHTML時,它將格式化它們。如果我不正確,我將立即刪除此答案

+0

我不是downvoter,而是@freefaller關於你在說什麼[標準](http://www.w3.org/TR/html4/intro/sgmltut.html#h-3.2.2)?單引號與雙引號一樣可接受。 – Engineer 2012-07-18 19:16:34

+2

我沒有downvote,但是雙引號和單引號絕對沒有區別,即「雙引號是標準」是錯誤的。 (http://stackoverflow.com/questions/2373074/single-vs-double-quotes-vs) – fresskoma 2012-07-18 19:16:58

+0

@Engineer,我想你是對的......也許它只是瀏覽器的默認設置。將編輯 – freefaller 2012-07-18 19:19:04

相關問題