Подгрузка содержимого Web‑страниц
Для подгрузки фрагмента содержимого Web‑страницы из стороннего файла и вывода его в указанный элемент Web‑страницы библиотека Ext Core предлагает метод load объекта Element:
<экземпляр объекта Element> .load(<интернет‑адрес> |<конфигуратор> )
Единственный параметр метода load задает либо интернет‑адрес файла, в котором хранится предназначенный для загрузки фрагмент содержимого Web‑страницы, либо конфигуратор, задающий параметры для загрузки данного файла.
Вот свойства этого конфигуратора и соответствующие им параметры:
– url – интернет‑адрес загружаемого файла в виде строки. Это единственный обязательный параметр.
– success – функция, которая будет вызвана, если загрузка файла завершится успешно.
– failure – функция, которая будет вызвана, если при загрузке файла возникнет ошибка.
– callback – функция, которая будет вызвана после окончания загрузки файла, независимо от того, успешно загрузится файл или нет.
– timeout – промежуток времени (тайм‑аут) , в течение которого Web‑обозреватель будет ожидать окончания загрузки файла. Если файл за этот промежуток времени не загрузится, библиотека Ext Core будет считать, что возникла ошибка загрузки. Тайм‑аут задается в виде числа в миллисекундах; значение по умолчанию – 30 000 мс (30 с).
Функции, указанные в параметрах success и failure, не принимают параметров. Функция, указанная в параметре callback, должна принимать два параметра: конфигуратор, переданный методу load в качестве параметра, и логическое значение, равное true в случае удачной загрузки файла и false при возникновении ошибки.
Метод load полностью заменяет все содержимое элемента Web‑страницы, у которого он был вызван. Добавить загруженное содержимое к уже имеющемуся с его помощью мы не сможем.
А теперь важный момент! Метод load при вызове отправляет Web‑серверу запрос на получение указанного файла и сразу же завершает свою работу (начинает выполняться код, следующий за вызовом этого метода). Он не ждет, когда файл будет загружен и выведен на экран. Программисты называют подобные методы асинхронными .
Но что делать, если нам понадобится выполнять какие‑либо манипуляции с содержимым загруженного файла? Посмотрим на список свойств конфигуратора, передаваемый методу load в качестве параметра. Там присутствует свойство success, которому присваивается функция, вызываемая после успешной загрузки файла. Мы можем поместить код, манипулирующий загруженным содержимым, в тело этой функции. (Еще можно использовать функцию, присваиваемую свойству callback конфигуратора, только в этом случае придется проверять, успешно ли завершилась загрузка.)
ВНИМАНИЕ!
Средства Web‑обозревателя для подгрузки содержимого из стороннего файла, которые задействует библиотека Ext Core, работают только в том случае, если все эти файлы, а также файл базовой Web‑страницы загружаются с Web‑сервера. При загрузке файлов без участия Web‑сервера, прямо с файловой системы локального компьютера, они не работают – это ограничения самого Web‑обозревателя.
Еще в главе 1 мы установили и опробовали в работе Web‑сервер Microsoft Internet Information Services. Долгое время мы им не пользовались, но теперь настал момент, когда его "услуги" нам потребуются. Так что проверим его еще раз – потом будет не до того.
Дата добавления: 2015-05-19; просмотров: 1094;