Вопрос

У меня есть веб -сайт, который использует Плагин адреса jQuery от Asuly Для навигации.

Проблема, которая у меня возникает, заключается в том, что использование IE6 и IE7, когда пользователь использует кнопки Back/Produck, веб -сайт заканчивается на неожиданной странице.

Вот сокращенная версия того, что я сейчас делаю.

$.address.init(function(event) {
    defaultPage = "1";
}).change(function(event) {
    $("#content").html('<div><img src="/images/activity indicator.gif"></div>')
    $("#content").load("./pages/"+names+".html", function(){
    var names = $.map(event.pathNames, function(n) {
        return n.substr(0, 1).toUpperCase() + n.substr(1);
    }).concat(event.parameters.id ? event.parameters.id.split('.') : []);
        pageScripts[names]();
    });
});

Если я на странице /, перейти к #/1, перейти к #/2, затем страница goto #/3, Я на странице #/3, никаких проблем с этим. Когда я нажимаю «назад» в IE6 или IE7 (Chrome, FF, IE8, IE9 все работают нормально), когда на странице #/3, Меня отправили на страницу /. Анкет Нажатие вперед перемещает меня на страницу /#3.

Он пропускает историю с хэш -вкладок.

Тем не менее Пример с сайта отлично работает с IE6/IE7. Я не могу найти функциональные различия между тем, что я сделал, и тем, что он делает.

Это было полезно?

Решение

Вам нужно использовать атрибут REL.

<a href="/deep-link" rel="address:/deep-link">Deep link</a>

IE6/IE7, кажется, уважает использование этого для этой функции.

У этого есть побочные эффекты (то есть на каждой ссылке с REL есть обработчик событий сейчас), что может или не может повлиять на вашу конкретную реализацию.

Примечание: я приму ответить с большей заботой и объяснением, вложенным в него, если вы действительно хотите ответить на этот вопрос.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top