में मैं सामने के अंत पर बैक-एंड पर CodeIgniter और Backbone.js के साथ एक वेब अनुप्रयोग developping कर रहा हूँ। मैं अपने प्रारंभ टेम्पलेट के रूप में HTML5 Boilerplate का भी उपयोग कर रहा हूं।Backbone.js बग का कारण केवल IE7
मैं बैकबोन के नियंत्रक और इतिहास का उपयोग कर रहा अपने आवेदन के माध्यम से मुख्य नेविगेशन के रूप में। मैंने इसे अतीत में एक बार किया है और सबकुछ ठीक काम करता है। समस्या यह है, जब मैं) Backbone.History.start (साथ hashchange घटना पर कब्जा शुरू करने और एक लिंक example.com/#home पर क्लिक करें, URL में हैश परिवर्तन, घटना निकाल दिया जाता है, लेकिन 2 सेकंड के बाद, हैश को मंजूरी दे दी है यूआरएल से और जावास्क्रिप्ट त्रुटि केवल i7 में फेंक दी जाती है।
मैं स्रोत कोड और hashchange घटना पर एक नज़र है एक IFRAME हैश मान परिवर्तन की जांच करने के लिए एक अंतराल चल बनाकर IE7 में हासिल की है।
किसी को भी करने से पहले इस अजीब बग था और पता है कि यह कैसे हल करने के लिए?
'Backbone.history.start()' IE7 को छोड़कर सही तरीके से काम करता है। ऐसा लगता है कि आईई 7 एक 'हैशचेंज' घटना ट्रिगर नहीं करता है। मेरे मामले में मैंने ['Modernizr.hashchange'] (http://www.modernizr.com/docs/#hashchange) का उपयोग पहली बार जांचने के लिए किया था जब यह समर्थित है। यदि नहीं, तो मैं '.saveLocation()' और '.loadUrl()' का उपयोग करूंगा। – Shiki