С юзабилити связано несколько моментов, о которых следует побеспо¬коиться. Первый из них: пользователи ожидают, что веб-приложения будут работать точно так же, как любое другое приложение. В Outlook 2003, который послужил прототипом данного приложения, двойной щелчок по заголовку новости в средней панели приводит к открытию нового окна, в котором выводится текст сообщения. Поскольку Foo-Reader.NET следует той же модели, по двойному щелчку открывается новое окно, в котором будет открыта определенная статья или запись в сетевом дневнике. Для этого необходимо предусмотреть обработчик события ondoubleclick для заголовков новостей; в нашем случае это функция doubleClick() (позднее мы увидим, как назначается обработ¬чик события):
function doubleClick() {
var oltem = oFeed.items[this.getAttribute("frFeedItem")]; var oWindow = window.open(oItem.link.value);
}
Второй момент состоит в том, что пользователь должен знать, когда приложение занято выполнением запроса. В данной ситуации запросы отправляются на сервер после загрузки списка рассылок, поэтому надо как-то показать пользователю, что в этот момент приложение; то. С этой целью перед пользователем на время выполнения за будет выводиться панель, отображающая ход загрузки и скрь щаяся после ее завершения. На рис. 5.2 показано окно, отобрав ход загрузки. В идеальном случае простое приложение, такое как FooReader.i содержало бы исключительно клиентские программные компоне Сценарий JavaScript был бы в состоянии сам получать рассылки'. с помощью объекта XMLHttp из различных доменов, не обращаясь \ ким-либо серверным компонентам. Но Internet Explorer и Mozillal fox1 из соображений безопасности накладывают целый ряд огра ний на возможность получения данных из различных доменов, в чем возникает потребность в наличии промежуточных серверных ашшонентов.