popState
ईवेंट यूआरएल बदल गया है (या तो पीछे या आगे) ट्रिगर किया जाएगा। और हाल ही में मैं देखा है कि, उदाहरण के लिए, http://www.example.com/
में:कुछ शर्त में पॉपस्टेट को कैसे रद्द करें
<a href="#anchor">Top</a>
भी popState
ट्रिगर किया जाएगा, पेज "को फिर से लोड करने के लिए" के कारण।
मुझे कैसे पता चलेगा कि यदि यह वही यूआरएल है और केवल #
हिस्सा बदल गया है?
$(window).bind("popstate",function(){
swap(location.href);
})
उदाहरण में, जब आप "शीर्ष" लिंक (ऊपर देखें) पर क्लिक करें, पेज #anchor
के लिए जाना जाएगा, लेकिन यह भी यह popState
ट्रिगर किया जाएगा और पुन: लोड है, जो मैं उम्मीद नहीं है कारण बनता है।
लेकिन यह कैसे मैं 'popState' के साथ गठजोड़ कर सकते हैं चर अद्यतन करने के लिए जब भी आप pushState() या replaceState() के साथ राज्य को बदलने की जरूरत है? –
[एमडीएन] (https://developer.mozilla.org/en/DOM/Manipulating_the_browser_history): "ध्यान दें कि pushState() कभी भी हैशचेंज ईवेंट को निकालने का कारण नहीं बनता है, भले ही नया यूआरएल पुराने यूआरएल से अलग हो इसका हैश। "काम नहीं करता है। –