Страницы

Поиск по вопросам

воскресенье, 8 марта 2020 г.

DOMImplementation - проверка версии DOM

#javascript #dom


Хотел посмотреть, какой результат получу при запуске следующего интерфейса DOM 3

alert(DOMImplementation.hasFeature("Core", "3.0"));


Однако ни при использовании Microsoft Edge, ни при использовании Google Chrome никакой
реакции не получил.

Поддерживается ли этот интерфейс DOM 3 браузерами, или я что-то делаю не правильно?
    


Ответы

Ответ 1



DOMImplementation - это один из предоставляемых браузером интерфейсов, поэтому для вызова функций описываемых в этом интерфейсе необходим объект, который этот интерфейс реализует. Такой объект определен в интерфейсе Document interface Document : Node { [SameObject] readonly attribute DOMImplementation implementation; ... } Поэтому вызов должен выглядеть так: alert(document.implementation.hasFeature("Core", "3.0")); Но если обратиться к описанию этого метода: The hasFeature() method must return true. Note: hasFeature() originally would report whether the user agent claimed to support a given DOM feature, but experience proved it was not nearly as reliable or granular as simply checking whether the desired objects, attributes, or methods existed. As such, it should no longer be used, but continues to exist (and simply returns true) so that old pages don't stop working.

Комментариев нет:

Отправить комментарий