google.script.history sınıfı (İstemci Tarafı API'sı)
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Ayrıntılı belgeler
push(stateObject, params, hash)
Sağlanan durum nesnesini, URL parametrelerini ve URL parçasını tarayıcı geçmişine aktarır
yığını. Durum nesnesi, geliştirici tarafından tanımlanan basit bir JavaScript Nesnesi'dir ve
Uygulamanın mevcut durumuyla alakalı tüm verileri içermelidir. Bu yöntem
pushState()
JavaScript yöntemi.
Index.html
var now = new Date();
var state = {
'timestamp': now.getTime()
};
var params = {
'options': "none"
};
google.script.history.push(state, params, "anchor1");
Parametreler
Ad | Tür | Açıklama |
stateObject | Object | Geliştirici tarafından tanımlanmış bir nesne
bir tarayıcı geçmişi etkinliğiyle ilişkilendirilmiştir ve durum açıldığında yeniden görüntülenir. Normal şartlarda
uygulama durumu bilgilerini (ör. sayfa verileri) ileride almak üzere depolamak için kullanılır. |
params | Object | Şuna ait URL parametrelerini içeren bir nesne:
bu eyaletle ilişkilidir. Örneğin, {foo: “bar”, fiz: “baz”} şuna eşittir:
"?foo=bar&fiz=baz" . Alternatif olarak diziler de kullanılabilir:
{foo: [“bar”, “cat”], fiz: “baz”} , "?foo=bar&foo=cat&fiz=baz" değerine eşit.
Boş veya tanımlanmamış ise mevcut URL parametreleri değiştirilmez. Boşsa URL parametreleri
temizlendi.
|
hash | String | Şundan sonra görünen dize URL parçası:
'#' karakteriyle ayrılır. Boş veya tanımlanmamış ise geçerli URL parçası değiştirilmez. Boşsa
URL parçası temizlendi.
|
replace(stateObject, params, hash)
Tarayıcı geçmişi yığınındaki en önemli etkinliği, sağlanan (geliştirici tanımlı) durumla değiştirir
nesne, URL parametreleri ve URL parçası için aynı dili kullanın. Aksi takdirde bu,
push() aracılığıyla gönderin.
Index.html
var now = new Date();
var state = {
'timestamp': now.getTime()
};
var params = {
'options': "none"
};
google.script.history.replace(state, params, "anchor1");
Parametreler
Ad | Tür | Açıklama |
stateObject | Object | Geliştirici tarafından tanımlanmış bir nesne
bir tarayıcı geçmişi etkinliğiyle ilişkilendirilmiştir ve durum açıldığında yeniden görüntülenir. Normal şartlarda
uygulama durumu bilgilerini (ör. sayfa verileri) ileride almak üzere depolamak için kullanılır. |
params | Object | Şuna ait URL parametrelerini içeren bir nesne:
bu eyaletle ilişkilidir. Örneğin, {foo: “bar”, fiz: “baz”} şuna eşittir:
"?foo=bar&fiz=baz" . Alternatif olarak diziler de kullanılabilir:
{foo: [“bar”, “cat”], fiz: “baz”} , "?foo=bar&foo=cat&fiz=baz" değerine eşit.
Boş veya tanımlanmamış ise mevcut URL parametreleri değiştirilmez. Boşsa URL parametreleri
temizlendi.
|
hash | String | Şundan sonra görünen dize URL parçası:
'#' karakteriyle ayrılır. Boş veya tanımlanmamış ise geçerli URL parçası değiştirilmez. Boşsa
URL parçası temizlendi.
|
setChangeHandler(function)
Tarayıcı geçmişindeki değişikliklere yanıt vermek için bir geri çağırma işlevi ayarlar. Geri çağırma işlevi
bağımsız değişken olarak yalnızca tek bir etkinlik nesnesi almalıdır.
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...
});
Parametreler
Ad | Tür | Açıklama |
function | Function | istemci tarafında
öğesini kullanarak geçmiş değişiklik etkinliğinde çalıştırılacak geri çağırma işlevi
event nesnesi olarak belirtin.
|
Etkinlik nesnesi
Alanlar |
e.state |
Patlatılan etkinlikle ilişkilendirilen durum nesnesi. Bu nesne, durumla aynı
karşılık gelen push() veya
Patlatılmış durumu ekleyen replace() yöntemi
eklenir.
{"page":2, "name":"Wilbur"}
|
e.location |
Konum nesnesi
patlatılan etkinlikle ilişkili
{"hash":"", "parameter":{"name": "alice", "n": "1"}, "parameters":{"name": ["alice"], "n": ["1", "2"]}}
|
Aksi belirtilmediği sürece bu sayfanın içeriği Creative Commons Atıf 4.0 Lisansı altında ve kod örnekleri Apache 2.0 Lisansı altında lisanslanmıştır. Ayrıntılı bilgi için Google Developers Site Politikaları'na göz atın. Java, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2025-07-26 UTC.
[null,null,["Son güncelleme tarihi: 2025-07-26 UTC."],[[["\u003cp\u003e\u003ccode\u003egoogle.script.history\u003c/code\u003e enables interaction with the browser history stack within web apps using \u003ccode\u003eIFRAME\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eIt provides methods to push, replace, and monitor browser history state, including URL parameters and fragments.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can define custom state objects to store and retrieve application-specific data associated with history events.\u003c/p\u003e\n"],["\u003cp\u003eA change handler can be set to trigger a callback function in response to history changes, allowing dynamic UI updates.\u003c/p\u003e\n"]]],[],null,["# Class google.script.history (Client-side API)\n\n`google.script.history` is an asynchronous client-side JavaScript API that can interact\nwith the browser history stack. It can only be used in the context of a web app that uses\n[`IFRAME`](/apps-script/reference/html/sandbox-mode#properties).\nIt is not intended for use with sidebars and dialogs in an add-on or\ncontainer-script context. For more information, see the\n[guide to using browser\nhistory in web apps](/apps-script/guides/web#web_apps_and_browser_history). \n\n### Methods\n\n| Method | Return type | Brief description |\n|----------------------------------------------------------------------|-------------|----------------------------------------------------------------------------------------------------------------------|\n| [push(stateObject, params, hash)](#push(Object,Object,String)) | `void` | Pushes the provided state object, URL parameters and URL fragment onto the browser history stack. |\n| [replace(stateObject, params, hash)](#replace(Object,Object,String)) | `void` | Replaces the top event on the browser history stack with the provided state object, URL parameters and URL fragment. |\n| [setChangeHandler(function)](#setChangeHandler(Function)) | `void` | Sets a callback function to respond to changes in the browser history |\n\nDetailed documentation\n----------------------\n\n### `push(stateObject, params, hash)`\n\nPushes the provided state object, URL parameters and URL fragment onto the browser history\nstack. The state object is a simple JavaScript Object that is defined by the developer and can\ncontain any data relevant to the app's current state. This method is analogous to the\n[pushState()](https://developer.mozilla.org/en-US/docs/Web/API/History_API#The_pushState()_method)\nJavaScript method. \n\n### Index.html\n\n```html\nvar now = new Date();\nvar state = {\n 'timestamp': now.getTime()\n};\nvar params = {\n 'options': \"none\"\n};\ngoogle.script.history.push(state, params, \"anchor1\");\n```\n\n#### Parameters\n\n| Name | Type | Description |\n|---------------|----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `stateObject` | `Object` | An developer-defined object to be associated with a browser history event, and which resurfaces when the state is popped. Typically used to store application state information (such as page data) for future retrieval. |\n| `params` | `Object` | An object containing URL parameters to associate with this state. For example, `{foo: \"bar\", fiz: \"baz\"}` equates to `\"?foo=bar&fiz=baz\"`. Alternatively, arrays can be used: `{foo: [\"bar\", \"cat\"], fiz: \"baz\"}` equates to `\"?foo=bar&foo=cat&fiz=baz\"`. If null or undefined, the current URL parameters are not changed. If empty, the URL parameters are cleared. |\n| `hash` | `String` | The string URL fragment appearing after the '#' character. If null or undefined, the current URL fragment is not changed. If empty, the URL fragment is cleared. |\n\n*** ** * ** ***\n\n*** ** * ** ***\n\n### `replace(stateObject, params, hash)`\n\nReplaces the top event on the browser history stack with the provided (developer-defined) state\nobject, URL parameters and URL fragment. This is otherwise identical to\n[push()](#push(Object,Object,String)). \n\n### Index.html\n\n```html\nvar now = new Date();\nvar state = {\n 'timestamp': now.getTime()\n};\nvar params = {\n 'options': \"none\"\n};\ngoogle.script.history.replace(state, params, \"anchor1\");\n```\n\n#### Parameters\n\n| Name | Type | Description |\n|---------------|----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `stateObject` | `Object` | An developer-defined object to be associated with a browser history event, and which resurfaces when the state is popped. Typically used to store application state information (such as page data) for future retrieval. |\n| `params` | `Object` | An object containing URL parameters to associate with this state. For example, `{foo: \"bar\", fiz: \"baz\"}` equates to `\"?foo=bar&fiz=baz\"`. Alternatively, arrays can be used: `{foo: [\"bar\", \"cat\"], fiz: \"baz\"}` equates to `\"?foo=bar&foo=cat&fiz=baz\"`. If null or undefined, the current URL parameters are not changed. If empty, the URL parameters are cleared. |\n| `hash` | `String` | The string URL fragment appearing after the '#' character. If null or undefined, the current URL fragment is not changed. If empty, the URL fragment is cleared. |\n\n*** ** * ** ***\n\n### `setChangeHandler(function)`\n\nSets a callback function to respond to changes in the browser history. The callback function\nshould take only a single [event object](#eventObject) as an argument.\n\n### Index.html\n\n```html\ngoogle.script.history.setChangeHandler(function (e) {\n console.log(e.state);\n console.log(e.location.parameters);\n console.log(e.location.hash);\n\n // Adjust web app UI to match popped state here...\n});\n```\n\n#### Parameters\n\n| Name | Type | Description |\n|------------|------------|----------------------------------------------------------------------------------------------------------------------------------|\n| `function` | `Function` | a client-side callback function to run upon a history change event, using the [event object](#eventObject) as the only argument. |\n\n#### Event object\n\n| Fields ||\n|--------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `e.state` | The state object associated with the popped event. This object is identical to the state object that used in the corresponding [push()](#push(Object,Object,String)) or [replace()](#replace(Object,Object,String)) method that added the popped state to the history stack. ``` {\"page\":2, \"name\":\"Wilbur\"} ``` |\n| `e.location` | A [location object](/apps-script/guides/html/reference/url#locationObject) associated with the popped event ``` {\"hash\":\"\", \"parameter\":{\"name\": \"alice\", \"n\": \"1\"}, \"parameters\":{\"name\": [\"alice\"], \"n\": [\"1\", \"2\"]}} ``` |\n\n*** ** * ** ***"]]