google.script.history sınıfı (İstemci Tarafı API'sı)

google.script.history, tarayıcı geçmişi yığınıyla etkileşim kurabilen, eşzamansız bir istemci tarafı JavaScript API'sidir. Yalnızca IFRAME kullanan bir web uygulaması bağlamında kullanılabilir. Eklenti veya container komut dosyası bağlamında kenar çubukları ve iletişim kutularıyla kullanılmak üzere tasarlanmamıştır. Daha fazla bilgi için web uygulamalarında tarayıcı geçmişini kullanma kılavuzuna bakın.

Yöntemler

YöntemDönüş türüKısa açıklama
push(stateObject, params, hash) void Sağlanan durum nesnesini, URL parametrelerini ve URL parçasını tarayıcı geçmişi yığınına aktarır.
replace(stateObject, params, hash) void Tarayıcı geçmişi yığınındaki en başarılı etkinliği sağlanan durum nesnesi, URL parametreleri ve URL parçasıyla değiştirir.
setChangeHandler(function) void Tarayıcı geçmişindeki değişikliklere yanıt vermek için bir geri çağırma işlevi ayarlar

Ayrıntılı belgeler

push(stateObject, params, hash)

Sağlanan durum nesnesini, URL parametrelerini ve URL parçasını tarayıcı geçmişi yığınına aktarır. Durum nesnesi, geliştirici tarafından tanımlanan basit bir JavaScript Nesnesidir ve uygulamanın mevcut durumuyla ilgili tüm verileri içerebilir. Bu yöntem, pushState() JavaScript yöntemine benzer.

Index.html

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

Parametreler

AdTürAçıklama
stateObjectObjectTarayıcı geçmişi etkinliğiyle ilişkilendirilecek, geliştirici tarafından tanımlanan ve durum açıldığında yeniden ortaya çıkan nesne. Tipik olarak uygulama durumu bilgilerini (ör. sayfa verileri) daha sonra kullanılmak üzere depolamak için kullanılır.
paramsObjectBu durumla ilişkilendirilecek URL parametrelerini içeren bir nesne. Örneğin {foo: “bar”, fiz: “baz”}, "?foo=bar&fiz=baz" değerine eşittir. Alternatif olarak, diziler kullanılabilir: {foo: [“bar”, “cat”], fiz: “baz”}, "?foo=bar&foo=cat&fiz=baz" değerine eşittir. Boş veya tanımsızsa mevcut URL parametreleri değiştirilmez. Boş bırakılırsa URL parametreleri temizlenir.
hashString"#" karakterinden sonra görünen dize URL parçası. Null veya tanımsızsa geçerli URL parçası değişmez. Boş bırakılırsa URL parçası temizlenir.


replace(stateObject, params, hash)

Tarayıcı geçmişi yığınındaki en başarılı etkinliği, sağlanan (geliştirici tarafından tanımlanan) durum nesnesi, URL parametreleri ve URL parçasıyla değiştirir. Bu, diğer durumlarda push() ile aynıdır.

Index.html

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

Parametreler

AdTürAçıklama
stateObjectObjectTarayıcı geçmişi etkinliğiyle ilişkilendirilecek, geliştirici tarafından tanımlanan ve durum açıldığında yeniden ortaya çıkan nesne. Tipik olarak uygulama durumu bilgilerini (ör. sayfa verileri) daha sonra kullanılmak üzere depolamak için kullanılır.
paramsObjectBu durumla ilişkilendirilecek URL parametrelerini içeren bir nesne. Örneğin {foo: “bar”, fiz: “baz”}, "?foo=bar&fiz=baz" değerine eşittir. Alternatif olarak, diziler kullanılabilir: {foo: [“bar”, “cat”], fiz: “baz”}, "?foo=bar&foo=cat&fiz=baz" değerine eşittir. Boş veya tanımsızsa mevcut URL parametreleri değiştirilmez. Boş bırakılırsa URL parametreleri temizlenir.
hashString"#" karakterinden sonra görünen dize URL parçası. Null veya tanımsızsa geçerli URL parçası değişmez. Boş bırakılırsa URL parçası temizlenir.

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 bir etkinlik nesnesini 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

AdTürAçıklama
functionFunctionBir geçmiş değişikliği etkinliğinde çalıştırmak için tek bağımsız değişken olarak etkinlik nesnesini kullanan bir istemci tarafı geri çağırma işlevi.

Etkinlik nesnesi

Alanlar
e.state

Hazırlanan etkinlikle ilişkilendirilen durum nesnesi. Bu nesne, geçmiş durumunu geçmiş yığınına ekleyen ilgili push() veya replace() yönteminde kullanılan durum nesnesiyle aynıdır.

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

Oluşturulan etkinlikle ilişkili bir konum nesnesi

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