Опубликован: 19.05.2006 | Уровень: для всех | Доступ: платный
Дополнительный материал 8:

Приложение B: Замечания относительно Исполнения, Разработки и Дизайна

Сценарии

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

Эта спецификация резервирует синтаксис для поддержки в будущем макросов скриптов в атрибутах HTML CDATA. Замысел в том, чтобы атрибуты устанавливались в зависимости от свойств объектов, появившихся ранее на странице. Синтаксис таков:

attribute = "... &{ macro body }; ... "
Текущая практика для макросов сценариев

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

Атрибуты CDATA обрабатываются так:

  1. Разборщик SGML вычисляет все мнемоники SGML (напр., ">").
  2. Затем макросы сценариев вычисляются машиной скриптов.
  3. Наконец, результирующая строка символов предаётся приложению для последующей обработки.

Обработка макросов имеет место при загрузке документа (или перезагрузке), но не происходит при изменении размера документа, перерисовке и т.п.

НЕ РЕКОМЕНДУЕТСЯ:

Вот несколько примеров с использованием JavaScript. В первом устаноавливается случайное значение для цвета фона страницы:

<BODY bgcolor='&{randomrgb};'>

Возможно, Вы хотите уменьшить яркость фона в вечернее время:

<BODY bgcolor='&{if(Date.getHours > 18)...};'>

В следующем примере JavaScript использован для установки координат карты изображений, обрабатываемой на стороне клиента:

<MAP NAME=foo>
   <AREA shape="rect" coords="&{myrect(imageuri)};" href="&{myuri};" alt="">
 </MAP>
Этот пример устанавливает размер изображения на базе свойств документа:
<IMG src="bar.gif" width='&{document.banner.width/2};' height='50%' alt="banner">

Вы можете установить URI для ссылки или изображения:

<SCRIPT type="text/javascript">
  function manufacturer(widget) {
      ...
  }
  function location(manufacturer) {
      ...
  }
  function logo(manufacturer) {
      ...
  }
</SCRIPT>
 <A href='&{location(manufacturer("widget"))};'>widget</A>
 <IMG src='&{logo(manufacturer("widget"))};' alt="logo">

Последний пример показывает, как атрибуты SGML CDATA могут быть выделены кавычками с использованием знаков одиночной или двойной кавычки. Если Вы используете одиночные кавычки вокруг строки, можно включить двойные кавычки как часть содержимого строки. Другой подход заключается в использовании &quot; для обозначения двойной кавычки:

<IMG src="&{logo(manufacturer(&quot;widget&quot;))};" alt="logo">

Фрэймы

Поскольку нет гарантии, что имя целевого/target фрэйма уникально, можно попробовать описать существующую практику поиска фрэйма, установленного как целевой:

  1. Если имя целевого фрэйма является зарезервированным словом, оно применяется как описано.
  2. Иначе выполните первичный поиск в иерархии фрэймов в окне, содержащем ссылку. Используйте первый фрэйм, имя которого совпало точно.
  3. Если в (2) такой фрэйм не найден, примените шаг 2 к каждому окну, в порядке спереди-назад. Остановитесь сразу, как только найден фрэйм с именем, совпадающим точно.
  4. Если в (3) такой фрэйм не найден, создайте новое окно и назначьте ему целевое имя.

Доступность

Инициатива W3C по Доступности Вэб - Web Accessibility Initiative ( "[WAI]" ) даёт серию рекомендаций по повышению доступности Web для людей с ограниченными физическими возможностями. Есть три блока рекомендаций:

  1. Web Content Accessibility Guidelines ( "[WCGL]" ) - для авторов и менеджеров сайтов. Пожалуйста, проконсультируйтесь в Web Content Accessibility Guidelines о том, как применять альтернативный текст для изображений, аплетов скриптов и т.д.
  2. User Agent Accessibility Guidelines ( "[UAGL]" ) - для разработчиков пользовательских агентов (ПА) (браузеров, мультимедиа плэйеров, технологий-помощников). Пожалуйста, используйте эти рекомендации как руководство по обработке альтернативного текста.
  3. Authoring Tool Accessibility Guidelines ( "[ATGL]" ) - для разработчиков авторских утилит.

Безопасность

Якоря, внедрённые изображения и др. элементы, содержащие URI, как параметры могу модифицировать URI в ответ на действия пользователя. В этом случае, необходимо рассмотреть вопросы безопасности в "[RFC1738]" , раздел 6. Широко используемы методы отправки данных формы - HTTP и SMTP - не гарантируют конфиденциальности. Провайдеры, запрашивающие частную информацию с помощью форм, - особенно через элемент INPUT, type="password" - должны быть уверены, и убедить своих пользователей, в конфиденциальности передачи информации.

Вопросы безопасности форм

ПА не должны пересылать все файлы, запрашиваемые пользователем. Таким образом, HTML ПА должны требовать подтверждения обработки любых файлов, которые могут быть запрошены в атрибуте value элемента INPUT. Скрытые элементы управления не должны специфицировать файлы.

Эта спецификация не содержит механизма шифровки данных; это должно выполняться каким-либо другим механизмом шифровки передачи данных.

Как только файл загружен, ПА должен обработать и сохранить его соответствующим образом.

Ирина Кириллова
Ирина Кириллова

Нажимаю на ссылку на дополнительный материал и дополнение к информации-меня возвращает на первую страницу лекции. Подскажите, что делать? Или дополнительный материал платный?

Евгений Летенков
Евгений Летенков
Россия, Москва, РУДН, 2005
Иван Бокарёв
Иван Бокарёв
Австрия