Кнопка "Назад" в Firefox не работает должным образом: вместо HTML отображается javascript
Я использую History.js, чтобы сделать мои AJAX-страницы закладками и получить ожидаемое нажатие кнопки браузера назад / вперед. В Safari все прекрасно работает, но в Firefox 6, если я покидаю свой сайт, а затем возвращаюсь назад, используя кнопку hte back, я получаю javascript вместо страницы:
- перейдите на mysite.com/user/1/post_board
- нажмите на фильтр сообщений, адрес меняется на mysite.com/user/1/post_board?filter=one
- введите google.com в адресную строку
- нажмите кнопку назад
- Я вижу 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 не будет работать