が存在するかどうかを単に検出する方法があるのではないかと思っていました。できればdoctype
HTML5Doctypeのみです。文字列などで返したくはありません(ここで同様の質問をしてすでに試していますが、以下のコードを参照してください)。むしろ、存在しないかどうかを確認したいだけです。同様に、存在しない場合は、、を呼び出し、alert
存在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のエラーコンソールがそれをキャッチしてエラーを表示することに気付きました。たぶん私の条件文の構文が間違っていますか?