ИНФОРМАЦИЯ,    ДИЗАЙН,    ПЕРЕВОДЫ,    РЕКЛАМА   .   .   .
w a p - с а й т
Информационный портал
Сегодня:  
admin@aranea.ru
+79068922256

  aranea.ru || Спецификация HTML 4.01 | 18. Сценарии (Scripts)

18. Сценарии (Scripts)

18.3. Разработка документов для устройств вывода, которые не поддерживают сценарии

18.3.1. Элемент NOSCRIPT
18.3.2. Скрытие данных сценария для устройств вывода

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

18.3.1 Элемент NOSCRIPT

<!ELEMENT NOSCRIPT - - (%block;)+
  -- alternate content container for non script-based rendering -->
<!ATTLIST NOSCRIPT
  %attrs;                              -- %coreattrs, %i18n, %events --
  >

Начальный тег: обязательный, конечный тег: обязательный

Элемент NOSCRIPT позволяет авторам предоставить альтернативное содержание, когда сценарий не выполняется. Содержание элемента NOSCRIPT должно выводиться только устройством вывода, обнаружившим сценарий, следующим образом:

  • Устройство вывода сконфигурировано не оценивать сценарии.
  • Устройство вывода не поддерживает язык сценария, включенного в элемент SCRIPT в документе.

Устройства вывода, которые не поддерживают клиентские сценарии, должны выводить содержание данного элемента.

В следующем примере устройство вывода, которое выполняет SCRIPT, будет включать динамически созданные данные в документ. Если устройство вывода не поддерживает сценарии, пользователь может все же извлечь данные через ссылку.

<SCRIPT type="text/tcl">
 ...some Tcl script to insert data...
</SCRIPT>
<NOSCRIPT>
 <P>Access the <A href="http://someplace.com/data">data. </A>
</NOSCRIPT>

18.3.2 Скрытие данных сценария для устройств вывода

Устройства вывода, которые не признают элемент SCRIPT, будут, возможно, выводить содержание такого элемента как текст. Некоторые машины сценариев, включая JavaScript, VBScript и Tcl, позволяют выражениям сценария включаться в комментарий SGML. Устройства вывода, которые не признают элемент SCRIPT, будут таким образом игнорировать комментарий, а машины сценариев с развитой логикой будут понимать, что сценарий в комментариях следует выполнить.

Другое решение для проблемы – хранить сценарии во внешних документах и ссылаться на них атрибутом src.

Включение сценария JavaScript в комментарий

Машина JavaScript позволяет строке "" от синтаксического анализатора JavaScript.

<SCRIPT type="text/javascript">
<!--  to hide script contents from old browsers
  function square(i) {
    document.write("The call passed ", i ," to the function.","
") return i * i } document.write("The function returned ",square(5),".") // end hiding contents from old browsers --> </SCRIPT>
Включение сценариев VBScript в комментарий

В VBScript, символ одинарной кавычки приводит к тому, что остальная часть текущей строки становится комментарием. Поэтому, это можно использовать для скрытия строки "-->" от VBScript, например:

   <SCRIPT type="text/vbscript">
     <!--
       Sub foo()
        ...
       End Sub
     ' -->
    </SCRIPT>
Заключение сценариев TCL в комментарий

В Tcl, символ "#" создает комментарий до конца строки:

<SCRIPT type="text/tcl">
<!--  to hide script contents from old browsers
  proc square {i} {
    document write "The call passed $i to the function.
" return [expr $i * $i] } document write "The function returned [square 5]." # end hiding contents from old browsers --> </SCRIPT>

Обратите внимание. Некоторые браузеры закрывают комментарии на первом символе ">", и для скрытия содержания сценария от таких браузеров, вы можете переставить операнды для реляционных операторов и операторов сдвига (например, используйте "y < x", а не "x > y") или использовать обход для ">", зависящий от языка сценария.


← Назад | Вперед →
Copyright © 2006 -  aranea.ru