Thực tế là, bạn không tải trang mới, nhưng nội dung được tải qua AJAX.
Trang sau đó sử dụng API lịch sử HTML5 để thêm khả năng Điều hướng bằng cách sử dụng nút quay lại và tiến trình của trình duyệt.
tôi bắt đầu vào chủ đề này bằng cách đọc và cố gắng ra hai nguồn sau:
http://diveintohtml5.info/history.html
http://html5demos.com/history
Cách đơn giản nhất là để nạp và thay thế các nội dung hiện tại thông qua AJAX và sau đó gọi
history.pushState(null, null, link.href);
Để thêm mục nhập lịch sử của biểu đồ tly hiển thị trang.
Nếu bây giờ bạn nhấn nút quay lại, trình duyệt sẽ không tải trang trước đó, nhưng kích hoạt sự kiện popState
. Điều này có thể được sử dụng để khôi phục trang trước đó bằng cách sử dụng AJAX hoặc thông tin được lưu trữ trong các biến JavaScript của bạn.
window.addEventListener("popstate", function(e) {
//loadPreviousPage();
}
Tôi cho rằng đó là "ứng dụng một trang", có nghĩa là bạn không bao giờ thực sự kích hoạt tải lại toàn bộ trang. –
nhưng URL chenged – rayking
họ sử dụng pushState –