我有一台运行Windows 7的PC。浏览网页时,我看到很多正常的引号(",')。但偶尔,我会把它看作是这样的HTML实体:"
。我经常在精心设计的大预算网站上看到它,设计师应该知道他们正在做什么,比如IGN或CNN。
我很好奇为什么我会看到这个,以及我的浏览器或计算机是否有问题。但我真正的问题是:当其他人(特别是旧系统)查看我的网站时,有没有办法防止特殊字符显示为HTML实体?
一般来说,什么样的代码会导致出现此问题,如何防止这种情况发生?
答案 0 :(得分:1)
Web开发人员可能会输入"
,而HTML编辑器会将其设为"
。您可以查看页面来源。
答案 1 :(得分:1)
他们可能正在使用JQuery的text()
函数而不是html()
函数。这将导致显示"
而不是实际引号。这样做的原因是因为text()
添加了转义字符,因此当在网页上查看时,传递给它的任何内容都将显示完全相同(见下文)。
我们需要注意,此方法会根据需要转义提供的字符串,以便在HTML中正确呈现。为此,它调用DOM方法.createTextNode(),[which]不将字符串解释为HTML。 (来源:http://api.jquery.com/text)
转义字符&
可能是由quot;
添加到text()
前面的内容,这会导致它显示为"