feature | version | このブラウザ | IE6 | IE7 | Firefox2-3 | Opera9 | Safari2 | Safari3 | Konqueror3 |
---|---|---|---|---|---|---|---|---|---|
HTML | 1.0 | true | 未調査 | true | true | 未調査 | true | 未調査 | |
XML | 1.0 | false | 未調査 | true | true | 未調査 | true | 未調査 | |
Core | 2.0 | false | 未調査 | true | true | 未調査 | true | 未調査 | |
HTML | 2.0 | false | 未調査 | true | true | 未調査 | true | 未調査 | |
XHTML | 2.0 | false | 未調査 | true | false | 未調査 | true | 未調査 | |
XML | 2.0 | false | 未調査 | true | true | 未調査 | true | 未調査 | |
Views | 2.0 | false | 未調査 | true | true | 未調査 | true | 未調査 | |
Events | 2.0 | false | 未調査 | true | true | 未調査 | true | 未調査 | |
UIEvents | 2.0 | false | 未調査 | true | true | 未調査 | true | 未調査 | |
MouseEvents | 2.0 | false | 未調査 | true | true | 未調査 | true | 未調査 | |
MutationEvents | 2.0 | false | 未調査 | false | true | 未調査 | true | 未調査 | |
HTMLEvents | 2.0 | false | 未調査 | true | true | 未調査 | true | 未調査 | |
StyleSheets | 2.0 | false | 未調査 | true | true | 未調査 | true | 未調査 | |
CSS | 2.0 | false | 未調査 | true | true | 未調査 | true | 未調査 | |
CSS2 | 2.0 | false | 未調査 | true | true | 未調査 | true | 未調査 | |
Traversal | 2.0 | false | 未調査 | false | true | 未調査 | true | 未調査 | |
Range | 2.0 | false | 未調査 | true | true | 未調査 | true | 未調査 | |
Core | 3.0 | false | 未調査 | false | false | 未調査 | false | 未調査 | |
XMLVersion | 1.0 | false | 未調査 | false | false | 未調査 | false | 未調査 | |
XMLVersion | 1.1 | false | 未調査 | false | false | 未調査 | false | 未調査 | |
XML | 3.0 | false | 未調査 | false | false | 未調査 | false | 未調査 | |
LS | 3.0 | false | 未調査 | false | true | 未調査 | false | 未調査 | |
LS-Async | 3.0 | false | 未調査 | false | true | 未調査 | false | 未調査 | |
Validation | 3.0 | false | 未調査 | false | false | 未調査 | false | 未調査 | |
xpath | 3.0 | false | 未調査 | true | true | 未調査 | true | 未調査 |
注:XMLVersionは対応するXMLのバージョンを調べるものとしてLevel 3 Coreで定義されました。
document.open(); document.write(document.implementation.hasFeature("HTML","1.0")); document.close();
function createdoc(){ if(document.implementation.hasFeature("Core","2.0")){ newdt = document.implementation.createDocumentType("nazo","-//NoName//DTD NAZO 1.0//JP","http://foo.jp/foo/"); newdoc = document.implementation.createDocument("http://foo.jp/foo/", "nazo", newdt); newdoc.documentElement.appendChild(newdoc.createElement('fumei')); for(i=0;i<newdoc.getElementsByTagName('*').length;i++){ alert("要素"+i+": "+newdoc.getElementsByTagName('*')[i].nodeName); } alert(newdoc.isSupported("HTML", "2.0")); } }
しかし文書型宣言自体の知識があんまりないんですが、この例は正しいんでしょうか…。
たぶん、以下のXMLと同じものが作れているはずです。
<!DOCTYPE nazo "-//NoName//DTD NAZO 1.0//JP" "http://foo.jp/foo/"> <nazo> <fumei> </fumei> </nazo>