我想知道是否有一种简单的方法来检测 adoctype
是否存在 - 最好只有 HTML5 文档类型。我不想以字符串或任何东西的形式返回它(尽管我已经尝试过这里提出的类似问题,请参见下面的代码),我只想看看它是否不存在。比如,如果它不存在,调用一个alert
, then return false
,或者如果它存在,调用一个接受函数。
就像我之前说的,我已经阅读了这里的其他帖子和其他论坛上的其他帖子,但似乎没有一个与我的答案相匹配,或者我可能错误地解释了代码,如果是这样,请告诉我。
我已经尝试过的代码如下:
var msg = {
noHTML5: "You're pages document type is either not defined or not compliant with HTML5."
},
node = document.doctype,
thisNodeHTML = "<!DOCTYPE " + node.name + (node.publicId ? ' PUBLIC"' + node.publicId + '"' : '') + (!node.publicId && node.systemId ? ' SYSTEM' : '') + (node.systemId ? ' "' + node.systemId + '"' : '') + ">";
if(!thisNodeHTML) {
alert(msg.noHTML5);
return false;
}
else {
// success = true;
}
编辑:
但是,我确实注意到,一旦我删除了 html 文件中的 doctype,Chrome 的错误控制台就会捕获它并显示错误。也许我的条件语句的语法不正确?