Ajax
Ajax - подход к построению интерактивных пользовательских интерфейсов веб-приложений, заключающийся в «фоновом» обмене данными браузера с веб-сервером. В результате, при обновлении данных, веб-страница не перезагружается полностью и веб-приложения становятся более быстрыми и удобными.
Работа Google Suggest заключается в том, что по нескольким введенным буквам специальная программа на JavaScript обращается к сайту Google и запрашивает у него 10 самых «популярных» слов, начинающихся с тех же букв. Скрипт срабатывает настолько быстро, что выпадающий список с вариантами появляется практически мгновенно. Естественно, перезагрузка страницы при этом не производится — все реализовано на JavaScript и DHTML.
В интерактивности - статические html сайты - это прошлое. Динамические с использованием CGI (или модулей сервера, например Apache) и баз данных, когда сервер при отправки формы формирует страницу и показывает ее после обновления - чуть современней, но все же во многих областях, где требуется практически сопостовимая с десктопными приложениями интерактивность - так же угасают. На смену приходят интерактивные функциональные программы, в полной мере взаимодействующие с пользователем; информация, полученная от сервера практически мгновенно отображается на экране без перезагрузке страницы. Речь я виду об AJAX'e, что в расшифровке "асинхронный JavaScript и XML" (термин ввел Джесс Гарретт). А если более подробно, то - "асинхронный JavaScript + CSS + DOM + XMLHttpRequest".
Значит, так. На этот раз мы рассмотрим сразу два способа реализации Drag&Drop на странице.
Технология AJAX в жизни веб-разработчика с каждым днем начинает играть всё более значимую роль. Многие коммерческие сайты на глазах приобретают ту или иную функциональность асинхронной передачи данных на сервер. Вот и я некоторое время назад заинтерсовался данным вопросом и начал изучать соответствующие теме материалы.
Еще в начале нынешнего года аббревиатура AJAX (Asynchronous JavaScript + XML, по-русски произносится как “аякс”) была знакома лишь узкому кругу знатоков последних новинок в области разработки Web-приложений, а сейчас она, кажется, превратилась в самый популярный в компьютерных СМИ термин. И, что интересно, вокруг этой в общем-то не очень сложной, хотя и оригинальной технологии (см. PC Week/RE, № 6/2006, с. 33) разворачивается нешуточная борьба, в которую втягиваются не только ведущие софтверные поставщики, но И многочисленные небольшие специализированные компании — разработчики инструментария.
Сегодня невозможно создавать сколько-нибудь значительные программы без обращения к XML. Будь вы разработчиком Web-страниц, обдумывающим переход к XHTML, Web-программистом, разрабатывающим JavaScript, серверным программистом, использующим дескрипторы развертывания и привязку данных, или программистом, исследующим базы данных на основе XML, без расширяемого языка разметки вам не обойтись. Поэтому неудивительно, что XML считается одной из корневых технологий, которые лежат в основе Ajax.
AJAX (Asynchronous JavaScript and XML) - термин, который не так давно вошел в лексикон создателей WEB-приложений. Он означает целую совокупность технологий, объединяемых в рамках одного интерфейса и позволяющих отправлять запросы без перезагрузки страницы.
Сейчас в сети Интернет наблюдается очень активное развитие (и даже использование) новых технологий. Одна из таких технологий - AJAX.
Список некоторых AJAX-ошибок в Internet Explorer, которые мешают радоваться жизни.
Google объявила об открытии интерфейса Google AJAX Libraries API. Что это и для чего нужно я вкратце поясню. Во-первых, это хранилище всех версий следующих библиотек: jQuery; Dojo; MooTools; script.aculo.us; prototype. Это значит вы можете получить любую версию библиотек сразу в коде страницы с помощью специального запроса (об этом чуть позже). Это также значит, что вам не предется хранить на своем сервере все эти кучи файлов и менять с выходом новых версий файл. И да, на сервере Google хранятся также сжатые версии.
Плагин для создания всплывающий окон
Это два года назад AJAX был в диковинку (да и самого слова AJAX тогда ещё не выдумали). Теперь веб-приложения, страницы которых обновлялись на лету, в порядке вещей. Даже наоборот: без AJAX трудно представить себе некоторые сервисы.
Для тех, кто не в курсе. AJAX - идея, предложенная одним человеком в 2005 году. Суть ее сводится к следующему: осуществлять передачу данных (т.е. общение клиента с сервером) без фактической перезагрузки web-страницы. Есть несколько реализаций этой идеи, данная статья раскажет о моей. При этом я не утверждаю, что ее не было до меня. Если была - я о ней не знал (на момент написания сего).
Случается такое, когда вы смотрите на вращающийся индикатор загрузки и думаете, обновить страницу или нет, потом смотрите на часы, чем же может заниматься это приложение.
Всего при помощи нескольких ловких приемов с использованием XHTML, вы сможете создать первоклассные, отличные сайты, которые будут загружаться очень быстро.
Ajax обещает принести много пользы в web-проектировании, и для основной Ajax-технологии уже доказана возможность её просто ошеломляющего применения (http://maps.google.com, http://www.francisshanahan.com/zuggest.aspx). Однако Ajax не панацея.
CSS–табы — в наши дни это звучит как «последний крик моды». Лично мне нравится сама идея их существования. Кажется, самый популярный метод создания табов с использованием CSS – метод Sliding Doors (скользящих дверей). И на первый взгляд они кажутся самым привлекательным и лёгким в применении инструментом. Однако, они так … статичны.
Сейчас подробно будет рассмотрен алгоритм проведения опроса и протокол взаимодействия клиента и сервера.
Ajax начинает потихоньку матереть как технология, и в нем уже оформляются различные паттерны, подходы, школы (а с ними появляются и обязательные священные войны). В частности у нескольких людей уже (вот например заметка Фрэнка Соммерса, которая меня и сподвигла к написанию этой) я читал о том, что оформились два принципиально разных подхода к написанию ajax-приложений:
* создание готового HTML на сервере с автоматическим внедрением его в нужное место страницы
* передача на страницу только структурированных данных и изменение по ним HTML’а скриптом на клиенте
Несмотря на то, что Фрэнк пишет, что эти два подхода несовместимы, я обнаружил, что сам как раз их смешиваю, причем мне кажется что удачно.
Одно из главных затруднений, с которым сталкиваются разработчики интерфейсов веб-приложений, состоит в том, что после того, как страница оказалась в браузере клиента, связь браузера с сервером заканчивается. Любое действие с элементом интерфейса требует повторного обращения к серверу с повторной загрузкой новой страницы. Из-за этого веб-приложение теряет свою элегантность и медленно работает. В данной статье я расскажу о том, как данную проблему можно решить с помощью JavaScript и объекта XMLHttpRequest.
На страницах вашего сайта содержится множество специализированных терминов. Когда пользователь просматривает сайт, у него могут возникать вопросы касательно этих терминов. Как сделать так, чтобы посетитель сайта по мере возникновения вопросов мог незамедлительно получать на них ответы?
Сегодня я написал простые плагины для Smarty, поддерживающие AJAX. Я не пытался разработать мощный фреймворк для веб-приложений,- просто хотелось дать идею, как можно интегрировать AJAX-технологию в Smarty. Но если у Вас есть любые предложения по улучшению системы, или Вы просто хотите отправить отзыв, оставьте комментарий на сайте.
Задача в двух словах: нужно фиксировать события, выполняемые JavaScript`ом, в истории браузера.
xAjax это open source библиотека классов PHP, которая позволяет вам легко создавать мощные, вебориентированные Ajax приложения использующие HTML, CSS, JavaScript, и PHP. Приложения, разработанные при помощи библиотеки xAjax могут асинхронно вызывать расположенные на сервере PHP функции и обновлять содержание без перезагрузки страницы.
Сейчас много различных библиотек и фреймворков доступно для разработчиков. Честно говоря я думаю, что их слишком много. Я изучил прекрасную библиотеку на javascript - Prototype.js и удивительную библиотеку script.aculo.us для создания визуальных эффектов.
Страницы: 12