У меня есть стандартное ASP .Net / MVC приложение, и у меня есть, как мне кажется, очень важный и супер-базовый c (я думаю) вопрос. Вопрос, по-видимому, не имеет опубликованного ответа (?)
Супер-общий сценарий:
На странице HTML пользователь нажимает какую-то кнопку навигации по странице. Обычно происходит следующее:
- Старая страница сохраняется в браузере в течение 1-2 секунд
- Весь браузер становится белым в течение 1-2 секунд.
- Браузер тратит X секунд на загрузку новой страницы.
Теперь то, что я считаю требованием суперосновы c, заключается в том, что пользователь получает ожидание или перемещать курсор по всем шагам 1, 2 и 3. Однако я не могу этого добиться, даже после нескольких часов попыток.
1: когда пользователь перемещается (например, нажимает ссылку или кнопку), он можно установить CSS как
$('*').css('cursor', 'wait !important')
Это немного помогает, так как курсор ожидания показывается примерно через фазу (1).
2 + 3: Однако, мой лучший снимок при установке курсора ожидания на этапах (2) и (3) - установить курсор ожидания в событии «Готов к документу» для новой страницы. Но это только вызывает курсор ожидания в течение очень короткого времени в конце фазы (3). Это действительно приводит только к некоторому бесполезному короткому «мерцанию курсора ожидания», которое на самом деле только добавляет путаницу конечному пользователю.
Идеальная ситуация, возможно / вероятно (по крайней мере, концептуально) - установить курсор ожидания на Само приложение браузера в начале фазы (1), затем восстановите курсор браузера по умолчанию в конце фазы (3) (например, в событии Готовность документа).
Пожалуйста, введите! :-) Тысячи людей до меня, должно быть, столкнулись с этим (!?)
PS. (Да, я знаю, что браузер выдает символ ожидания на активной в данный момент вкладке при переходе на другую страницу, но этот символ ожидания слишком мал / вне фокуса глаз пользователя. Пользователю нужен четкий / видимый символ ожидания в том же месте, где он нажал кнопку навигации, т. е. там, где у него есть фокус глаз. В противном случае многие пользователи будут думать, что веб-страница зависла).