русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Соответствие модели DOM


Дата добавления: 2015-07-09; просмотров: 526; Нарушение авторских прав


 

На момент написания этой книги последние версии современных броузеров, та_ ких как Firefox, Safari и Opera, прекрасно поддерживали стандарт DOM Level 2. Броузер Internet Explorer 6 в основном совместим со стандартом DOM Level 1, и практически не поддерживает стандарт DOM Level 2. Кроме того, из_за непол_ ной поддержки модуля Core Level 2 в нем вообще не поддерживается модуль Events Level 2, который будет обсуждаться в главе 17. Броузеры Internet Explorer 5 и 5.5 имеют значительные пробелы в совместимости, но достаточно хорошо поддерживают ключевые методы стандарта DOM Level 1, чтобы запус_ кать большинство примеров из этой главы.

 

Количество доступных броузеров теперь слишком велико, а изменения в сфере поддержки стандартов происходят слишком быстро, чтобы даже пытаться в этой книге определенно утверждать, какие средства DOM поддерживает тот или иной броузер. Следовательно, чтобы определить степень соответствия реали_ зации любого конкретного броузера модели DOM, вам придется полагаться на другие источники информации.

 

Одним из источников информации о соответствии является сама реализация. В «правильной» реализации свойство implementation объекта Document ссылается на объект DOMImplementation, определяющий метод с именем hasFeature(). Посред_ ством этого метода (если он существует) можно получить сведения о поддержке определенного модуля (или характристики) стандарта DOM. Например, опреде_ лить, поддерживает ли реализация DOM в веб_броузере базовые интерфейсы стандарта DOM Level 1 для работы с HTML_документами, можно с помощью сле_ дующего фрагмента:

 

if (document.implementation &&

 

document.implementation.hasFeature &&

 

document.implementation.hasFeature("html", "1.0")) {


 



330 Глава 15. Работа с документами

// Броузер заявляет о поддержке интерфейсов Core и HTML уровня 1

}

 

Метод hasFeature() принимает два аргумента: первый – это имя проверяемого мо_ дуля, второй – номер версии в виде строки. Он возвращает true, если указанная версия данного модуля поддерживается. В табл. 15.3 перечислены пары «назва_ ние/номер версии», определенные в стандартах DOM Level 1 и Level 2. Обратите внимание: названия модулей нечувствительны к регистру, поэтому вполне допус_ тимо чередовать прописные и строчные символы в их именах. В четвертом столб_ це таблицы указано, какие модули требуются для поддержки данного модуля, и следовательно, их наличие подразумевается в случае возвращения методом зна_ чения true. Например, если метод hasFeature() показал, что поддерживается мо_ дуль MouseEvents, это подразумевает также, что поддерживается модуль UIEvents, что, в свою очередь, подразумевает поддержку модулей Events, Views и Core.

 

Таблица 15.3. Модули, совместимость с которыми можно проверить методом hasFeature()

 

Название Версия Описание Подразумевает
модуля     поддержку
       
HTML 1.0 Интерфейсы Core и HTML уровня 1  
XML 1.0 Интерфейсы Core и XML уровня 1  
Core 2.0 Интерфейсы Core уровня 2  
HTML 2.0 Интерфейсы HTML уровня 2 Core
XML 2.0 Интерфейсы XML уровня 2 Core
Views 2.0 Интерфейс AbstractView Core
StyleSheets 2.0 Универсальный обход таблицы стилей Core
CSS 2.0 CSS_стили Core, Views
CSS2 2.0 Интерфейс CSS2Properties CSS
Events 2.0 Инфраструктура для обработки событий Core
UIEvents 2.0 События пользовательского интерфейса Events, Views
    (плюс модули Events и Views)  
MouseEvents 2.0 События мыши UIEvents
HTMLEvents 2.0 HTML_события Events
       

 

В Internet Explorer 6 метод hasFeature() возвращает true только для модуля HTML и версии 1.0. Он не сообщает о соответствии любым другим модулям, перечис_ ленным в табл. 15.3 (хотя, как мы увидим в главе 16, он поддерживает большин_ ство основных применений модуля CSS2).

 

В этой книге документируются интерфейсы, составляющие все DOM_модули, перечисленные в табл. 15.3. Модули Core и HTML рассматриваются в этой главе,


 



модули StyleSheets, CSS и CSS2 – в главе 16, а различные модули, относящиеся к событиям, – в главе 17. Четвертая часть этой книги содержит полное описание всех модулей.


 



15.4. Обзор объектной модели W3C DOM
   

 

Информации, возвращаемой методом hasFeature(), не всегда можно доверять. Как отмечалось ранее, IE 6 сообщает о соответствии средств HTML уровню 1, хо_ тя в этом соответствии есть некоторые проблемы. В то же время Netscape 6.1 со_ общает о несоответствии модулю Core Level 2, хотя этот броузер почти совместим с этим модулем. В обоих случаях нужны более подробные сведения о том, что именно совместимо, а что нет. Однако объем этой информации слишком велик, и она слишком изменчива, чтобы включать ее в печатное издание.

 

Те, кто активно занимается веб_разработкой, несомненно, уже знают или скоро узнают о многих специфических для броузеров деталях совместимости. Кроме того, в Интернете есть ресурсы, которые могут оказаться полезными. Организа_ ция W3C выпустила набор тестов (правда, не совсем полный) для проверки степе_ ни поддержки некоторых DOM_модулей, доступный на сайте http://www.w3c.org/ DOM/Test/. К сожалению, результаты этих тестов для наиболее распространен_ных броузеров опубликованы не были.

 

Возможно, в поисках информации о совместимости и соответствии стандартам лучше обратиться к независимым сайтам в Интернете. Один из достойных упо_ минания сайтов – http://www.quirksmode.org; его поддерживает Петер_Пауль Кох (Peter_Paul Koch). Он опубликовал результаты обширных исследований о со_ ответствии броузеров стандартам CSS и DOM. Еще один замечательный сайт – http://webdevout.net/browser_support.php; он поддерживается Дэвидом Хаммон_дом (David Hammond).

 



<== предыдущая лекция | следующая лекция ==>
Уровни и возможности DOM | Соответствие модели DOM броузера Internet Explorer


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.55 сек.