Кнопка "Назад" в Firefox не работает должным образом: вместо HTML отображается javascript

Я использую History.js, чтобы сделать мои AJAX-страницы закладками и получить ожидаемое нажатие кнопки браузера назад / вперед. В Safari все прекрасно работает, но в Firefox 6, если я покидаю свой сайт, а затем возвращаюсь назад, используя кнопку hte back, я получаю javascript вместо страницы:

  1. перейдите на mysite.com/user/1/post_board
  2. нажмите на фильтр сообщений, адрес меняется на mysite.com/user/1/post_board?filter=one
  3. введите google.com в адресную строку
  4. нажмите кнопку назад
  5. Я вижу JavaScript, загруженный на шаге 2

Что происходит? Что я делаю не так?

Вот код:

//  Bind to StateChange Event
    History.Adapter.bind(window,'statechange',function(e)
    {
        var state = History.getState();
        eval(state.data.function_rest + "("+JSON.stringify(state)+");");        
        History.log(state);
    });


$('.message_filter').bind('click', function() 
    {
        History.pushState({"function_rest":"restore_post_board_widget"}, document.title, this.href);
        return false
    });

function restore_post_board_widget(state)
{   
    $.getScript(state.url);
}

Спасибо за любую помощь.

1 ответ

Просто добавь:

window.onunload = function () {};

вот где я получил ответ:

После возвращения в историю Firefox JavaScript не будет работать

Другие вопросы по тегам