google.script.history क्लास (क्लाइंट-साइड एपीआई)

google.script.history एक एसिंक्रोनस क्लाइंट-साइड JavaScript एपीआई है, जो ब्राउज़र के इतिहास के स्टैक के साथ इंटरैक्ट कर सकता है. इसका इस्तेमाल सिर्फ़ ऐसे वेब ऐप्लिकेशन के लिए किया जा सकता है जो IFRAME का इस्तेमाल करता है. यह ऐड-ऑन या कंटेनर-स्क्रिप्ट के संदर्भ में, साइडबार और डायलॉग के साथ इस्तेमाल करने के लिए नहीं है. ज़्यादा जानकारी के लिए, वेब ऐप्लिकेशन में ब्राउज़र का इतिहास इस्तेमाल करने की गाइड देखें.

माटिंग में इस्तेमाल हुए तरीके

तरीकारिटर्न टाइपसंक्षिप्त विवरण
push(stateObject, params, hash) void दिए गए स्टेट ऑब्जेक्ट, यूआरएल पैरामीटर, और यूआरएल फ़्रैगमेंट को ब्राउज़र इतिहास स्टैक पर पुश करता है.
replace(stateObject, params, hash) void इसकी मदद से, ब्राउज़र इतिहास स्टैक में मौजूद सबसे ऊपर के इवेंट को दिए गए स्टेट ऑब्जेक्ट, यूआरएल पैरामीटर, और यूआरएल फ़्रैगमेंट से बदला जाता है.
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" के बराबर है. शून्य या तय नहीं होने पर, मौजूदा यूआरएल पैरामीटर में बदलाव नहीं किया जाता. अगर खाली है, तो यूआरएल पैरामीटर हटा दिए जाते हैं.
hashString'#' वर्ण के बाद दिखने वाला स्ट्रिंग यूआरएल फ़्रैगमेंट. अगर शून्य या तय नहीं किया गया है, तो मौजूदा यूआरएल फ़्रैगमेंट को नहीं बदला गया है. अगर खाली होता है, तो यूआरएल फ़्रैगमेंट मिटा दिया जाता है.


replace(stateObject, params, hash)

मुख्य इवेंट को दिए गए (डेवलपर की ओर से तय किए गए) स्थिति ऑब्जेक्ट, ब्राउज़र पैरामीटर, यूआरएल पैरामीटर, और यूआरएल फ़्रैगमेंट से बदलता है. इसके अलावा, यह 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" के बराबर है. शून्य या तय नहीं होने पर, मौजूदा यूआरएल पैरामीटर में बदलाव नहीं किया जाता. अगर खाली है, तो यूआरएल पैरामीटर हटा दिए जाते हैं.
hashString'#' वर्ण के बाद दिखने वाला स्ट्रिंग यूआरएल फ़्रैगमेंट. अगर शून्य या तय नहीं किया गया है, तो मौजूदा यूआरएल फ़्रैगमेंट को नहीं बदला गया है. अगर खाली होता है, तो यूआरएल फ़्रैगमेंट मिटा दिया जाता है.

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इतिहास बदलने वाले इवेंट पर चलाने के लिए, क्लाइंट-साइड कॉलबैक फ़ंक्शन, जिसे सिर्फ़ इवेंट ऑब्जेक्ट का इस्तेमाल किया जा सकता है.

इवेंट ऑब्जेक्ट

फ़ील्ड
e.state

पॉप-अप इवेंट से जुड़ा स्टेट ऑब्जेक्ट. यह ऑब्जेक्ट, उस राज्य ऑब्जेक्ट के जैसा है जिसका इस्तेमाल संबंधित push() या replace() तरीके में किया गया है और जिसने इतिहास स्टैक में पॉप-अप की स्थिति को जोड़ा है.

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

पॉप-अप इवेंट से जुड़ा लोकेशन ऑब्जेक्ट

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