google.script.history
là API JavaScript phía máy khách không đồng bộ có thể tương tác
cùng với ngăn xếp nhật ký duyệt web. Chỉ có thể dùng trong ngữ cảnh của một ứng dụng web sử dụng
IFRAME
.
Tính năng này không nhằm sử dụng với thanh bên và hộp thoại trong tiện ích bổ sung hoặc
ngữ cảnh tập lệnh vùng chứa. Để biết thêm thông tin, hãy xem
hướng dẫn sử dụng trình duyệt
nhật ký hoạt động trong ứng dụng web.
Phương thức
Phương thức | Loại dữ liệu trả về | Mô tả ngắn |
---|---|---|
push(stateObject, params, hash) |
void |
Đẩy đối tượng trạng thái, tham số URL và phân đoạn URL đã cung cấp vào nhật ký duyệt web ngăn xếp. |
replace(stateObject, params, hash) |
void |
Thay thế sự kiện hàng đầu trong ngăn xếp nhật ký trình duyệt bằng đối tượng trạng thái đã cung cấp, URL tham số và phân đoạn URL. |
setChangeHandler(function) |
void |
Thiết lập một hàm callback để phản hồi các thay đổi trong nhật ký duyệt web |
Tài liệu chi tiết
push(stateObject, params, hash)
Đẩy đối tượng trạng thái, tham số URL và phân đoạn URL đã cung cấp vào nhật ký duyệt web ngăn xếp. Đối tượng trạng thái là một Đối tượng JavaScript đơn giản do nhà phát triển xác định và có thể chứa mọi dữ liệu liên quan đến trạng thái hiện tại của ứng dụng. Phương thức này tương tự như pushState() JavaScript.
Index.html
var now = new Date(); var state = { 'timestamp': now.getTime() }; var params = { 'options': "none" }; google.script.history.push(state, params, "anchor1");
Tham số
Tên | Loại | Mô tả |
---|---|---|
stateObject | Object | Đối tượng do nhà phát triển xác định được liên kết với một sự kiện nhật ký duyệt web và xuất hiện lại khi trạng thái bật ra. Giá thông thường được dùng để lưu trữ thông tin trạng thái ứng dụng (như dữ liệu trang) cho mục đích truy xuất trong tương lai. |
params | Object | Đối tượng chứa tham số URL để
liên kết với trạng thái này. Ví dụ: {foo: “bar”, fiz: “baz”} tương đương với
"?foo=bar&fiz=baz" Ngoài ra, bạn có thể sử dụng mảng:
{foo: [“bar”, “cat”], fiz: “baz”} tương đương với "?foo=bar&foo=cat&fiz=baz" .
Nếu có giá trị rỗng hoặc không xác định, các tham số URL hiện tại sẽ không thay đổi. Nếu trống, các tham số URL sẽ
đã xóa.
|
hash | String | Phân đoạn URL của chuỗi xuất hiện sau '#' . Nếu có giá trị rỗng hoặc không xác định, mảnh URL hiện tại sẽ không thay đổi. Nếu trống, Phân đoạn URL bị xóa. |
replace(stateObject, params, hash)
Thay thế sự kiện trên cùng trong ngăn xếp nhật ký duyệt web bằng trạng thái đã cung cấp (do nhà phát triển xác định) Đối tượng URL, tham số URL và phân đoạn URL. Mặt khác, quy tắc này giống với push().
Index.html
var now = new Date(); var state = { 'timestamp': now.getTime() }; var params = { 'options': "none" }; google.script.history.replace(state, params, "anchor1");
Tham số
Tên | Loại | Mô tả |
---|---|---|
stateObject | Object | Đối tượng do nhà phát triển xác định được liên kết với một sự kiện nhật ký duyệt web và xuất hiện lại khi trạng thái bật ra. Giá thông thường được dùng để lưu trữ thông tin trạng thái ứng dụng (như dữ liệu trang) cho mục đích truy xuất trong tương lai. |
params | Object | Đối tượng chứa tham số URL để
liên kết với trạng thái này. Ví dụ: {foo: “bar”, fiz: “baz”} tương đương với
"?foo=bar&fiz=baz" Ngoài ra, bạn có thể sử dụng mảng:
{foo: [“bar”, “cat”], fiz: “baz”} tương đương với "?foo=bar&foo=cat&fiz=baz" .
Nếu có giá trị rỗng hoặc không xác định, các tham số URL hiện tại sẽ không thay đổi. Nếu trống, các tham số URL sẽ
đã xóa.
|
hash | String | Phân đoạn URL của chuỗi xuất hiện sau '#' . Nếu có giá trị rỗng hoặc không xác định, mảnh URL hiện tại sẽ không thay đổi. Nếu trống, Phân đoạn URL bị xóa. |
setChangeHandler(function)
Đặt một hàm callback để phản hồi các thay đổi trong nhật ký duyệt web. Hàm callback chỉ nên lấy một đối tượng sự kiện duy nhất làm đối số.
Index.html
google.script.history.setChangeHandler(function (e) { console.log(e.state); console.log(e.location.parameters); console.log(e.location.hash); // Adjust web app UI to match popped state here... });
Tham số
Tên | Loại | Mô tả |
---|---|---|
function | Function | phía máy khách để chạy theo sự kiện thay đổi lịch sử, sử dụng hàm callback event đối tượng làm đối số duy nhất. |
Đối tượng sự kiện
Trường | |
---|---|
e.state |
Đối tượng trạng thái liên kết với sự kiện được đẩy ra. Đối tượng này giống hệt với trạng thái đối tượng được sử dụng trong push() tương ứng hoặc Phương thức replace() đã thêm trạng thái bật lên vào ngăn xếp nhật ký. {"page":2, "name":"Wilbur"} |
e.location |
Đối tượng vị trí liên quan đến sự kiện bị đẩy ra {"hash":"", "parameter":{"name": "alice", "n": "1"}, "parameters":{"name": ["alice"], "n": ["1", "2"]}} |