【问题标题】:Why single quotes are being shown as double quotes?为什么单引号显示为双引号?
【发布时间】:2012-07-18 19:08:11
【问题描述】:
<span id='a'><img src='b.gif' /></span>
<script>
alert(document.getElementById('a').innerHTML);
</script>


输出为:&lt;img src="b.gif" /&gt;

“b.gif”显示为“b.gif”

在 FireBug 中查看源代码也会显示双引号。为什么会这样?

【问题讨论】:

  • Firebug 呈现 DOM 结构本身。可能他们总是使用双引号。只需检查生成的 HTML 代码(右键单击 > 查看源代码)。

标签: html parsing html-parsing dom


【解决方案1】:

双引号是属性的标准,单引号显然是可以接受的。

innerHTML 是处理后的标签集,所以浏览器会按照标准设置带有双引号的属性

正如已经指出的那样,属性上的双引号或单引号没有“标准”。

我的猜测是浏览器默认使用双引号,因此当您请求innerHTML 时,它会这样格式化它们。如果我不正确,我会立即删除这个答案

【讨论】:

  • 我不是反对者,但@freefaller 你在说什么standard?单引号和双引号一样可以接受。
  • 我没有投反对票,但是双引号和单引号之间绝对没有区别,即“双引号是标准”是错误的。 (stackoverflow.com/questions/2373074/single-vs-double-quotes-vs)
  • @Engineer,我想你是对的......也许它只是浏览器的默认设置。将编辑
  • 我在 Firefox 和 Chrome 中都观察到了这一点。
猜你喜欢
  • 2010-11-25
  • 1970-01-01
  • 1970-01-01
  • 2018-10-07
  • 2012-06-13
  • 2012-04-06
  • 2018-11-18
  • 2017-12-29
  • 2013-05-26
相关资源
最近更新 更多