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

google.script.history, etkileşime geçebilen, eşzamansız bir istemci taraflı JavaScript API'dir ile karşılaştırabilirsiniz. Yalnızca IFRAME. Eklentilerdeki kenar çubukları veya iletişim kutularıyla kullanılmak üzere tasarlanmamıştır. kapsayıcı komut dosyası bağlamına göz atalım. Daha fazla bilgi için tarayıcı kullanma kılavuzu geçmişi hakkında daha fazla bilgi edinin.

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şine aktarır yığını.
replace(stateObject, params, hash) void Tarayıcı geçmişi yığınındaki en önemli etkinliği, sağlanan durum nesnesi olan URL ile değiştirir. ve URL parçasını gösterir.
setChangeHandler(function) void Tarayıcı geçmişindeki değişikliklere yanıt vermek için 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ş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

AdTürAçıklama
stateObjectObjectGeliş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.
paramsObjectŞ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.
hashStringŞ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

AdTürAçıklama
stateObjectObjectGeliş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.
paramsObjectŞ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.
hashStringŞ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

AdTürAçıklama
functionFunctionistemci 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"]}}