מחלקה של google.script.history (ממשק API בצד הלקוח)

google.script.history הוא ממשק API אסינכרוני של JavaScript בצד הלקוח שיכול לקיים אינטראקציה במקבץ של היסטוריית הדפדפן. ניתן להשתמש בה רק בהקשר של אפליקציית אינטרנט שמשתמשת IFRAME היא לא מיועדת לשימוש עם סרגלי צד ותיבות דו-שיח בתוסף, או הקשר לסקריפט קונטיינר. מידע נוסף זמין במאמר מדריך לשימוש בדפדפן ההיסטוריה באפליקציות אינטרנט.

שיטות

שיטהסוג הערך המוחזרתיאור קצר
push(stateObject, params, hash) void דוחף את אובייקט המצב, הפרמטרים של כתובת האתר והמקטע של כתובת האתר שצוינו להיסטוריית הדפדפן סטאק.
replace(stateObject, params, hash) void הפונקציה מחליפה את האירוע העליון במקבץ של היסטוריית הדפדפן באובייקט המצב שסופק, URL פרמטרים ומקטע כתובת אתר.
setChangeHandler(function) void מגדירה פונקציית קריאה חוזרת שמגיבה לשינויים בהיסטוריית הדפדפן

מסמכי תיעוד מפורטים

push(stateObject, params, hash)

דוחף את אובייקט המצב, הפרמטרים של כתובת האתר והמקטע של כתובת האתר שצוינו להיסטוריית הדפדפן סטאק. אובייקט המצב הוא אובייקט JavaScript פשוט המוגדר על ידי המפתח ויכול מכילים את כל הנתונים שרלוונטיים למצב הנוכחי של האפליקציה. השיטה הזו מקבילה pushState() שיטת JavaScript.

Index.html

var now = new Date();
var state = {
  'timestamp': now.getTime()
};
var params = {
  'options': "none"
};
google.script.history.push(state, params, "anchor1");

פרמטרים

שםסוגתיאור
stateObjectObjectאובייקט שהוגדר על ידי המפתח שמשויכים לאירוע בהיסטוריית הגלישה, וצפים שוב כשהמצב "קופץ". בדרך כלל משמש לאחסון מידע על מצב האפליקציה (למשל נתוני דף) לצורך אחזור עתידי.
paramsObjectאובייקט שמכיל פרמטרים של כתובת אתר כדי לשייך למצב הזה. לדוגמה, {foo: “bar”, fiz: “baz”} שווה ל- "?foo=bar&fiz=baz". לחלופין, אפשר להשתמש במערכים: {foo: [“bar”, “cat”], fiz: “baz”} שווה ל-"?foo=bar&foo=cat&fiz=baz". אם הערך הוא null או לא מוגדר, הפרמטרים הנוכחיים של כתובת ה-URL לא ישתנו. אם השדה ריק, הפרמטרים של כתובת האתר בוצע ניקוי.
hashStringהמקטע של כתובת ה-URL במחרוזת שמופיע אחרי '#' . אם הערך הוא null או לא מוגדר, המקטע הנוכחי של כתובת ה-URL לא ישתנה. אם השדה ריק, המקטע של כתובת ה-URL הוסר.


replace(stateObject, params, hash)

החלפת האירוע העליון במקבץ של היסטוריית הדפדפן במצב שסופק (מוגדר על ידי המפתח) אובייקט, פרמטרים של כתובת אתר ומקטע של כתובת URL. אחרת הוא זהה ל- push().

Index.html

var now = new Date();
var state = {
  'timestamp': now.getTime()
};
var params = {
  'options': "none"
};
google.script.history.replace(state, params, "anchor1");

פרמטרים

שםסוגתיאור
stateObjectObjectאובייקט שהוגדר על ידי המפתח שמשויכים לאירוע בהיסטוריית הגלישה, וצפים שוב כשהמצב "קופץ". בדרך כלל משמש לאחסון מידע על מצב האפליקציה (למשל נתוני דף) לצורך אחזור עתידי.
paramsObjectאובייקט שמכיל פרמטרים של כתובת אתר כדי לשייך למצב הזה. לדוגמה, {foo: “bar”, fiz: “baz”} שווה ל- "?foo=bar&fiz=baz". לחלופין, אפשר להשתמש במערכים: {foo: [“bar”, “cat”], fiz: “baz”} שווה ל-"?foo=bar&foo=cat&fiz=baz". אם הערך הוא null או לא מוגדר, הפרמטרים הנוכחיים של כתובת ה-URL לא ישתנו. אם השדה ריק, הפרמטרים של כתובת האתר בוצע ניקוי.
hashStringהמקטע של כתובת ה-URL במחרוזת שמופיע אחרי '#' . אם הערך הוא null או לא מוגדר, המקטע הנוכחי של כתובת ה-URL לא ישתנה. אם השדה ריק, המקטע של כתובת ה-URL הוסר.

setChangeHandler(function)

מגדירה פונקציית קריאה חוזרת שמגיבה לשינויים בהיסטוריית הדפדפן. פונקציית קריאה חוזרת צריך לקחת רק אובייקט אירוע אחד כארגומנט.

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...
});

פרמטרים

שםסוגתיאור
functionFunctionבצד הלקוח להפעיל את פונקציית הקריאה החוזרת כשמתרחש אירוע שינוי בהיסטוריה, באמצעות אובייקט event כארגומנט היחיד.

אובייקט אירוע

שדות
e.state

אובייקט המצב שמשויך לאירוע הקופץ. האובייקט הזה זהה למצב שבו נעשה שימוש בפונקציה push() או השיטה replace() שהוסיפה את מצב החלון הקופץ למקבץ ההיסטוריה.

{"page":2, "name":"Wilbur"}
e.location

אובייקט מיקום שמשויכים לאירוע שקופץ

{"hash":"", "parameter":{"name": "alice", "n": "1"}, "parameters":{"name": ["alice"], "n": ["1", "2"]}}