Пользовательский интерфейс уведомлений и событий для тега объекта / ActiveX управления? - PullRequest
1 голос
/ 22 марта 2011

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

<OBJECT 
  ID="ActiveXControl" WIDTH=350 HEIGHT=50 
  CODEBASE="http://www.mysite.com/activexcontrol.cab" 
  CLASSID="CLSID:12345678-1234-1234-1234-111111222222"> 
</OBJECT>

Развертывание таким образом позволяет выполнять самостоятельную регистрацию.Пользователь обычно получает желтую полосу (или белое всплывающее окно внизу, в случае IE9), запрашивающее разрешение на установку.Если пользователь предоставляет разрешение, IE обновляет страницу, а затем, по-видимому, фактически загружает элемент управления из расположения CODEBASE.После завершения загрузки CAB пользователю обычно отображается приглашение UAC.

Проблема, с которой я сталкиваюсь, заключается в том, что мой элемент управления составляет 500 КБ, и для некоторых пользователей загрузка выполняется медленно.Они авторизуют мой элемент управления (через желтую панель IE), но затем их браузер сидит там, пока он загружает элемент управления, и они думают, что ничего не происходит, поэтому они обновляют страницу (плохо) или уходят (хуже).Мне нужен какой-то индикатор прогресса или какое-то сообщение «Пожалуйста, подождите», которое исчезает ПОСЛЕ завершения загрузки элемента управления.

Подводя итог, можно выделить 3 этапа:

  1. Страница развертывания ActiveX (пользователь не авторизован)

  2. Страница развертывания ActiveX (пользователь авторизовал, и IE обновил страницу)

  3. Control полностью загружен и работает

(помните, что на этапах 1 и 2 будет один и тот же код сервера, тот же HTTP GET, и мой сервер не узнает разницы.)

Проблема для меня в том, что пользовательский интерфейс одинаков для всех трех этапов.Как я могу сообщить пользователю, что происходит?Я попробовал подход, при котором я помещаю сообщение «Пожалуйста, подождите» на странице, но у этого есть два недостатка

  • , для этапа 1 это не имеет смысла. Пользователю не нужно ждать,Они должны авторизовать элемент управления.
  • Я не могу заставить сообщение «Пожалуйста, подождите» исчезнуть, как только я достигну этапа 3. Я попытался установить атрибут onload для тега OBJECT, чтобы использовать JS для удаления сообщения.но IE, похоже, не подчиняется.

Есть предложения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...