मैं ऐसी साइट पर काम कर रहा हूं जो AJAX के माध्यम से सामग्री परोसता है।क्या मैं इतिहास.popstate को प्रारंभिक पृष्ठ-लोड पर ट्रिगर करने से रोक सकता हूं?
यदि आप मेनू में किसी आइटम पर क्लिक करते हैं, तो सामग्री div को $.get
प्रतिक्रिया के साथ अद्यतन किया जाता है, कुछ भी फैंसी नहीं है।
मैं ब्राउज़र के पीछे/आगे बटन के साथ नेविगेशन की अनुमति देने के लिए history.pushState
लागू कर रहा हूं।
$(function() {
$(window).bind("popstate", function() {
$.getScript(location.href);
});
});
समस्या है, जब एक पृष्ठ के लिए पहली बार भरी हुई है, इस समारोह $.getScript
तो पेज तुरंत फिर से लोड किया जाता है करता है:
मैं इतिहास मार्गदर्शक पर सामग्री लोड करने के लिए निम्न है। पहली बार पृष्ठ लोड होने पर यह प्रारंभिक HTML दृश्य प्रस्तुत करता है, फिर दूसरे लोड पर यह जेएस व्यू प्रस्तुत करता है, क्योंकि यह एक जेएस अनुरोध है।
मैं इस घटना को HTML अनुरोधों वाले पृष्ठों पर फायरिंग से कैसे रोक सकता हूं?
नोट: history.popstate एक बार कहा जाता है - तुरंत पहले पृष्ठ लोड पर: और इस डिजाइन कर रहा है। (क्रोम में चेक किया गया) –