Остановить навигацию для вызова ajax

Я пишу приложение, которое имеет несколько смешанных одностраничных/многостраничных аспектов.

Допустим, меню примерно такое:

О нас | Блог

Ссылка О нас — это обычная ссылка <a href="about-us.html">, которая при нажатии уходит с текущей страницы.

Ссылка Блог — это ссылка javascript, которая выполняет вызов AJAX и изменяет текущую страницу на блог, динамически записывая новый HTML.

Если пользователь щелкнет ссылку О нас, а затем передумает и щелкнет ссылку Блог, я хочу отменить переход к "about-us.html". То, что я испытываю сейчас, это то, что иногда страница о нас загружается некоторое время, а блог загружается и отображается первым, но поскольку браузер уже запрашивает страницу о нас, когда этот запрос догоняет, страница меняется. Как я могу это исправить?


person Nathan Wall    schedule 23.08.2013    source источник
comment
можете ли вы попробовать window.stop() изнутри вашего вызова ajax. Надеюсь, это не должно мешать запросу ajax и просто останавливать обновление.   -  person Rajat Sharma    schedule 23.08.2013
comment
Если всего этого достаточно, вам может быть интересно сделать что-то особенное для IE, как и ожидалось: document.execCommand(Stop);   -  person Rajat Sharma    schedule 23.08.2013
comment
@RajatSharma Кажется, это работает отлично. Благодарю вас! Пожалуйста, сделайте это ответом, чтобы я мог его принять. :)   -  person Nathan Wall    schedule 23.08.2013


Ответы (1)


Пожалуйста, попробуйте window.stop() внутри вашего вызова ajax. Для IE вам нужно будет использовать document.execCommand("Stop");

person Rajat Sharma    schedule 23.08.2013