2011-10-23 8 views
7

संभव डुप्लिकेट:
How do I, with JavaScript, change the URL in the browser without loading the new page?जावास्क्रिप्ट: पेज को रीफ्रेश किए बिना मैं एड्रेस बार में यूआरएल कैसे बदलूं?

मैंने देखा है कि जीमेल और Grooveshark जैसे वेब ऐप्लिकेशन पृष्ठ को ताज़ा करने के बिना अपने ब्राउज़र के एड्रेस बार में यूआरएल बदल सकते हैं। अजाक्स स्पष्ट रूप से सामग्री को बदलने के लिए प्रयोग किया जाता है। मैं यूआरएल कैसे बदल सकता हूं?

+0

'location.hash' https://developer.mozilla.org/en/window.location –

उत्तर

10

जीमेल और Grooveshark केवल हैश बदलने के लिए, यह बदल रही द्वारा किया जाता है:

location.hash = 'blah' 

आप को लक्षित करते हैं एचटीएमएल 5 सक्षम ब्राउज़र, आप window.history.pushState और window.history.popState का उपयोग कर सकते हैं, http://spoiledmilk.dk/blog/html5-changing-the-browser-url-without-refreshing-page

देखें
5

आप HTML5 पुश स्थिति में देखना चाहते हैं। मुझे पता है कि iQuery मोबाइल पृष्ठ लोड को ट्रिगर किए बिना स्थान URL को संशोधित करने के लिए इस सुविधा का उपयोग कर रहा है और यह आपके लिए सही समाधान हो सकता है।

https://developer.mozilla.org/en/DOM/Manipulating_the_browser_history

यह ऐसे काम करता का एक उदाहरण है:

window.history.pushState(data, "Title", "/new-url"); 
+0

ध्यान दें कि फ़ायरफ़ॉक्स शीर्षक param (2) का समर्थन नहीं करता है, इसलिए document.title = title का उपयोग करें। – 0fnt

संबंधित मुद्दे

 संबंधित मुद्दे