在JavaScript中检测DOM级别?

时间:2017-01-24 07:50:02

标签: javascript dom

DOM有多个级别。是否有JavaScript的DOM API可以在运行时检测当前执行引擎支持的最高DOM级别?

2 个答案:

答案 0 :(得分:2)

    if(document.implementation){
        if(document.implementation.hasFeature('Core','2.0')){
            alert('DOM2 Core supported');
        }else{
            alert('DOM2 Core not supported');
        }

    }

答案 1 :(得分:1)

简短的回答是否定的。曾经有过,但它已被删除。

在DOM 1中引入,如果在DOM级别1.0支持HTML,则document.implementation.hasFeature( "HTML", "1.0")应该返回true。虽然可以假设这可以用于通过增加版本参数来检测支持的DOM级别,直到返回false,但是该功能的实现是不可靠的,DOM4要求该方法在所有方法中返回true案件,以免破坏网络。

MDN警告不要使用hasFeature并尽可能将其从现有代码中删除

通过检查需要使用的DOM方法的存在和类型,或者在try/catch块中尝试它们,留下标准特征检测。