русс | укр

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

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

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

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


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

Условные комментарии в Internet Explorer


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



 

На практике вы можете обнаружить, что большинство несовместимостей, кото_ рые необходимо учитывать при разработке клиентских сценариев, обусловлены спецификой броузера IE. Вследствие этого иногда возникает необходимость соз_


 

278 Глава 13. JavaScript в веб*броузерах

давать программный код отдельно для IE и отдельно для всех остальных броузе_ ров. Хотя обычно нужно стараться избегать применения нестандартных расши_ рений, присущих конкретному типу броузера, броузер IE поддерживает возмож_ ность создания условных комментариев в JavaScript_коде, что может оказаться полезным.

 

В следующем примере демонстрируется, как выглядят условные комментарии в HTML. Примечательно, что вся хитрость заключается в комбинации симво_ лов, закрывающих комментарий.

 

<!__[if IE]>

 

Эти строки фактически находятся внутри HTML_комментария. Они будут отображаться только в IE.

 

<![endif]__>

 

<!__[if gte IE 6]>

 

Эта строка будет отображена только в IE 6 или более поздних версиях. <![endif]__>

 

<!__[if !IE]> <__>

 

Это обычное HTML_содержимое, но IE не будет отображать его из_за комментариев, что расположены выше и ниже.

<!__> <![endif]__>

 

Это обычное содержимое, которое будет отображаться всеми броузерами.

 

Условные комментарии также поддерживаются интерпретатором JavaScript в IE, а программисты, знакомые с языком C/C++, найдут их похожими на инструк_ ции препроцессора #ifdef/#endif. Условные JavaScript_комментарии в IE начи_ наются с комбинации символов /*@cc_on и завершаются комбинацией @*/. (Пре_ фиксы «cc» и «cc_on» происходят от фразы «condition compilation», т. е. «услов_ ная компиляция».) Следующий условный комментарий содержит программный код, который может быть исполнен только в IE:



/*@cc_on

@if (@_jscript)

 

// Следующий код находится внутри JS_комментария, но IE исполнит его. alert("In IE");

 

@end

@*/

 

Внутри условных комментариев могут указываться ключевые слова @if, @else и @end, предназначенные для отделения программного кода, который должен ис_ полняться интерпретатором JavaScript в IE по определенному условию. В боль_ шинстве случаев вам достаточно будет использовать показанное в предыдущем фрагменте условие @if (@_jscript). JScript – это название интерпретатора Java_ Script, которое было дано ему в Microsoft, а переменная @_jscript в IE всегда имеет значение true.

 

При грамотном чередовании условных и обычных JavaScript_комментариев мож_ но определить, какой блок программного кода должен исполняться в IE, а какой во всех остальных броузерах:

 

/*@cc_on

@if (@_jscript)


 

13.7. Доступность
   

 

// Этот блок кода находится внутри условного комментария,

// который также является обычным JavaScript_комментарием. В IE этот блок

// будет выполнен, а в других броузерах _ нет.

 

alert('Вы пользуетесь Internet Explorer'); @else*/

// Этот блок уже не находится внутри JavaScript_комментария, но по_прежнему

// находится внутри условного комментария IE. Вследствие этого данный

// блок кода будет выполнен всеми броузерами, за исключением IE.

 

alert('Вы не пользуетесь Internet Explorer'); /*@end

@*/

 

Условные комментарии в HTML и JavaScript совершенно не стандартизованы, но иногда они могут оказаться полезными в обеспечении совместимости с IE.

 



<== предыдущая лекция | следующая лекция ==>
Проверка типа броузера | Доступность


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


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

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

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


 


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

 
 

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

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