2010-03-01 11 views
23

मैं यूआरएल हैश के लिए JQuery पुस्तकालयों के आसपास देख रहा हूं, लेकिन कोई भी अच्छा नहीं मिला। "इतिहास प्लगइन" है, लेकिन हम सभी जानते हैं कि यह छोटी है और लचीला नहीं है।JQuery में यूआरएल हैश/इतिहास करने के लिए सबसे अच्छी लाइब्रेरी क्या है?

मैं अपने पृष्ठों को एक div के अंदर लोड कर रहा हूं। मुझे यूआरएल हैशिंग के साथ वापस/आगे करने का एक तरीका चाहिए।

mydomain.com/#home 
mydomain.com/#aboutus 
mydomain.com/#register 

यह सब कुछ संभाल सकता है जो सबसे अच्छी लाइब्रेरी क्या है?

setInterval(function() { 
    if(theHashChanged) { 
     someFunction(oldHash,newHash); 
    } 
}, 500/*whatever*/); 

सुंदर इसके बारे में कोर है कि (ऋण ब्राउज़र, एक लिंक पर क्लिक बिना इतिहास प्रविष्टियों को जोड़ने के लिए हैक करता आदि):

उत्तर

25

मैंने हाल ही में 3 अलग-अलग प्लगइन्स - jquery history plugin, history, और jQuery BBQ देखा।

वे सेटअप करने के लिए काफी कठिन थे, मुझे jQuery.history काम मिल गया लेकिन अभी भी आईई 7 के साथ समस्याएं थीं। तो मैं बीबीक्यू में बदल गया और यह हमारे सभी लक्षित ब्राउज़रों (आईई 6, आई 7, आईई 8, एफएक्स 3) में ठीक काम करता है।

तो मैं jQuery बीबीक्यू प्लगइन की अनुशंसा करता हूं।

संपादित करें: here's a blog post मैंने अभी लिखा है जो कैस्केडिंग ड्रॉपडाउन के साथ jQuery बीबीक्यू प्रदर्शित करता है।

-4

AFAIK, सभी इतिहास प्लगइन्स एक ही बात करते हैं। यह हमेशा छोटी गाड़ी होने जा रहा है क्योंकि यह एक हैक का थोड़ा सा है और इतिहास परिवर्तनों को संभालने के लिए कोई क्रॉस ब्राउज़र एपीआई नहीं है।

उन सभी के शीर्ष पर, इस तरह की चीज़ के लिए उपयोगकर्ता अनुभव बहुत अच्छा नहीं है। उपयोगकर्ताओं को यह समझ में नहीं आता है कि उन्हें पृष्ठ से बाहर निकलने के लिए 4 बार बैक बटन पर क्लिक करना होगा।

+1

-1: बिल्कुल उपयोगी नहीं। और जब से उपयोगकर्ता उम्मीद करते हैं कि बैक-बटन उन्हें पृष्ठ से बाहर ले जाता है? क्या आप केवल फ्लैश-साइट सर्फ करते हैं? – nikow

+1

@nikow यह एक बड़े, सार्वजनिक सामना करने वाली साइट के साथ मेरे अनुभव पर आधारित है। सिर्फ इसलिए कि आप इस तरह कुछ कार्यान्वित कर सकते हैं, इसका मतलब यह नहीं है कि आपको चाहिए। मैं ईमानदारी से एक ऐसी साइट के बारे में नहीं सोच सकता जहां यह सुविधा परेशान करने से ज्यादा सहायक है। – noah

+1

@nikow - "जब उपयोगकर्ता उम्मीद करते हैं कि बैक-बटन उन्हें पृष्ठ से बाहर ले जाता है?" चूंकि वेब और वेब ब्राउज़र जहां पहली बार पेश किया गया था, मैं कहूंगा;)। बैक-बटन का सामान्य कार्य वर्तमान पृष्ठ से पिछले पृष्ठ पर जाने के लिए निश्चित रूप से है। –

0

मुझे reallysimplehistory (nee dhtmlHistory) के साथ शुभकामनाएं मिली हैं। यह jQuery विशिष्ट नहीं है, लेकिन यह आईई, फ़ायरफ़ॉक्स, और वेबकिट में काम करता है, और अधिक सेटअप की आवश्यकता नहीं है।

0

शायद इस jQuery इतिहास प्लगइन को आजमाएं: http://www.balupton.com/sandbox/jquery-history/demo/ यह क्रॉस ब्राउज़र समर्थन प्रदान करता है, हैश के लिए बाध्यकारी, ओवरलोडिंग हैश, बाकी सब कुछ। http://www.balupton.com/sandbox/jquery-ajaxy/demo/

यह http://wbhomes.com.au/ के रूप में समाधान ऐसी साइटों द्वारा चुना और http://gatesonline.com.au/stage/public/

कुल मिलाकर यह है:

वहाँ भी इसके लिए एक अजाक्स विस्तार, यह आसानी से एक उचित अजाक्स अनुप्रयोग में अपने वेबपेज को उन्नत करने के लिए अनुमति देता है अच्छी तरह से प्रलेखित, समर्थित और समृद्ध सुविधा। यह भी एक उदार सवाल जीता है How to show Ajax requests in URL?

1

क्या आपने jQuery पता का प्रयास किया है? असुअल से, जो लोग SWFAdress बनाते हैं। Asual - jquery Address

jQuery पता प्लगइन शक्तिशाली गहरी लिंकिंग क्षमताओं प्रदान करता है और अद्वितीय वर्चुअल पतों के निर्माण की अनुमति देता है जो किसी वेबसाइट अनुभाग या एप्लिकेशन स्थिति को इंगित कर सकते हैं।

+0

मैंने इस प्लगइन की कोशिश की और जब बदलाव की घटना पंजीकृत हुई तो इसमें समस्याएं थीं। – Chev

1

इतिहास.जेएस अच्छी तरह से दस्तावेज/रखरखाव और सभी ब्राउज़रों का समर्थन करता है।

https://github.com/browserstate/history.js

साइट से:

History.js शान से सभी ब्राउज़रों में एचटीएमएल 5 इतिहास/राज्य एपीआई (pushState, replaceState, onPopState) का समर्थन करता है। डेटा, शीर्षक, प्रतिस्थापन के लिए निरंतर समर्थन सहित। JQuery का समर्थन करता है, म्यूटूल और प्रोटोटाइप। एचटीएमएल 5 ब्राउज़र के लिए इसका मतलब यह है कि आप सीधे यूआरएल को संशोधित कर सकते हैं, बिना अब हैश का उपयोग किए बिना। HTML4 ब्राउज़र के लिए यह पुरानी ऑनशैशचेंज कार्यक्षमता का उपयोग करने के लिए वापस वापस आ जाएगा।

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

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