HTML 个实体何时未被解析?
When are HTML entities left unparsed?
我 运行 发现了一些我觉得有点奇怪的东西...有一个网站有 <table>
的音频文件 link,作者等
link 看起来像:
<a href="Links/Audio/audio_file_1.mp3">This & That</a>
奇怪的是&
字符在源文件中没有写成&
。如果我使用 Chrome Dev Tools(或 Firefox)并将内容更改为 This & That
,则字符串 &
是可见的,而不仅仅是 &
字符。这是为什么?
table 正在使用 TableSorter,我认为这可能是在幕后进行的...但即使我在禁用 Javascript 的情况下打开它,原始 &
字符仍然显示,所以这似乎不是罪魁祸首。
When are HTML entities left unparsed?
他们不是。 HTML 在读取时被解析。这完全独立于 JavaScript.
I found it strange that the &
character is not written as & in the source file.
的确,它应该是,但它的工作方式是因为浏览器优雅地处理无效标记,事实上,特定方面现在在规范中编码:不是 ambiguous 的符号是被视为文字符号。
If I use the Chrome Dev Tools (or Firefox) and change the content to This & That
, the string &
is visible, instead of just the &
character. Why is that?
当您通过 Chrome 的开发工具和类似工具查看 DOM 时,您会看到以有效形式表示的实时 DOM,而不是实际的源文件,所以很自然浏览器向您显示 &
为 &
(它应该在源文件中的实体)。
这独立于 Javascript。
&
和 &
与 &
具有相同的 HTML 编号,这也是这些符号的 ASCII Dec 规定。你可以在这里看看:http://www.ascii.cl/htmlcodes.htm
所以我猜你的代码有问题,它们在你的屏幕上应该被视为相同的符号 (&) .
我 运行 发现了一些我觉得有点奇怪的东西...有一个网站有 <table>
的音频文件 link,作者等
link 看起来像:
<a href="Links/Audio/audio_file_1.mp3">This & That</a>
奇怪的是&
字符在源文件中没有写成&
。如果我使用 Chrome Dev Tools(或 Firefox)并将内容更改为 This & That
,则字符串 &
是可见的,而不仅仅是 &
字符。这是为什么?
table 正在使用 TableSorter,我认为这可能是在幕后进行的...但即使我在禁用 Javascript 的情况下打开它,原始 &
字符仍然显示,所以这似乎不是罪魁祸首。
When are HTML entities left unparsed?
他们不是。 HTML 在读取时被解析。这完全独立于 JavaScript.
I found it strange that the
&
character is not written as & in the source file.
的确,它应该是,但它的工作方式是因为浏览器优雅地处理无效标记,事实上,特定方面现在在规范中编码:不是 ambiguous 的符号是被视为文字符号。
If I use the Chrome Dev Tools (or Firefox) and change the content to
This & That
, the string&
is visible, instead of just the&
character. Why is that?
当您通过 Chrome 的开发工具和类似工具查看 DOM 时,您会看到以有效形式表示的实时 DOM,而不是实际的源文件,所以很自然浏览器向您显示 &
为 &
(它应该在源文件中的实体)。
这独立于 Javascript。
&
和 &
与 &
具有相同的 HTML 编号,这也是这些符号的 ASCII Dec 规定。你可以在这里看看:http://www.ascii.cl/htmlcodes.htm
所以我猜你的代码有问题,它们在你的屏幕上应该被视为相同的符号 (&) .