使用 Javascript 将 HTML 的 DocType 作为字符串获取
我知道我可以通过 document.doctype
或 document.childNodes[0]
访问 doctype 对象,但我的问题是将 doctype 作为字符串获取。我可以在 chrome 和 safari 中通过调用 document.doctype
来执行此操作,它返回 。然而在 Firefox 中,调用
document.doctype
返回 DocumentType 对象。
有没有办法在所有浏览器中获取 doctype 字符串,如 chrome 和 safari 中?
谢谢!
I know that I can access to doctype object via document.doctype
or document.childNodes[0]
but my problem is getting doctype as a string. I can do this in chrome and safari by calling document.doctype
which returns <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
. However in Firefox, calling document.doctype
returns DocumentType object.
Is there a way to get the doctype string in all browsers as in chrome and safari?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
在所有兼容的浏览器(包括 Chrome/Safari)中,
document.doctype
还返回DocumentType
对象。以下代码可用于生成有效的 DOCTYPE 字符串。此方法返回 有效 (HTML5) doctypes 的正确字符串,例如:
< ;!DOCTYPE html>
代码说明:
In all compliant browsers (including Chrome/Safari),
document.doctype
also returns aDocumentType
object. The following code can be used to generate a valid DOCTYPE string.This method returns the correct string for valid (HTML5) doctypes, eg:
<!DOCTYPE html>
<!DOCTYPE html SYSTEM "about:legacy-compat">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
Explanation of the code:
您还可以使用这一行来获取当前的文档类型。这适用于任何现代浏览器以及 IE 9 及更高版本。
You can also use this one liner to get the current doctype. This will work in any modern browser and IE 9 and higher.
这就是您要找的吗?
Is that what are you looking for ?
连接
DocumentType.name
、.publicId
和.systemId
。像这样的东西:Concatenate
DocumentType.name
,.publicId
and.systemId
. Something like: