आम तौर पर अनुभव को साफ रखने के दौरान मैं प्रगतिशील वृद्धि का प्रबंधन कैसे करता हूं, लेकिन यह कितना सुरक्षित है? क्या दौड़ की स्थिति के लिए संभावित है और यह काम नहीं कर रहा है?तैयार राज्य से पहले डोम में हेरफेर करना ठीक है?
सरल सार परिदृश्य की कल्पना कीजिए, अगर आप जावास्क्रिप्ट समर्थन अलग ढंग से कुछ प्रदर्शित करना चाहते हैं .. यह आम तौर पर मैं क्या कर रहा खत्म हो जाएगा है:
<div id="test">original</div>
<script type="text/javascript">
var t = document.getElementById('test');
t.innerHTML = 'changed';
</script>
कई दावा कर सकते हैं आप एक रूपरेखा का उपयोग करें और इंतजार करना चाहिए एक डोमरेड इवेंट के लिए, और वहां परिवर्तन करें .. हालांकि वहां एक महत्वपूर्ण देरी है जहां दस्तावेज़ के अंत से पहले 'टेस्ट' तत्व पहले से ही प्रस्तुत किया जा चुका है और सीएसएस तैयार है और एक घरेलू ट्रिगर है .. इस प्रकार एक उल्लेखनीय झिलमिलाहट 'मूल' का।
क्या यह कोड दौड़ की स्थिति विफलताओं के लिए उत्तरदायी है? या क्या मैं guarentee कर सकता हूं कि एक तत्व स्क्रिप्ट से पहले मौजूद होने पर खोजने योग्य और संशोधित है?
अग्रिम धन्यवाद।
हाय रायगैक्स, हाँ, मैं ऑपरेशन निरस्त मुद्दे को पूरी तरह से बदल सकता हूं जो बदलते तत्वों के साथ बंद हो गया है .. स्नैपनेस के मामले में, ये पृष्ठ हल्के हैं, वास्तविक पृष्ठ 15kb है .. हालांकि मेरे बदले गए तत्व शुरुआती बॉडी टैग के ठीक नीचे हो सकता है, और यह मेरे पृष्ठ को कितना प्रकाश दे रहा है, इस पर ध्यान दिए बिना, यह पहले से ही आग से पहले प्रस्तुत करेगा .. मैं एक मैला अनुभव से बचने की कोशिश कर रहा हूं यह हमेशा डोमरेड के साथ आईएमओ अनुभव करता है और इस तरह की चीजें करता है। – meandmycode
अंधेरे युग में वापस, जब हमारे पास डोमरेडी पर आग लगाने के लिए एक क्रॉस-ब्राउजर तरीका नहीं था, तो हम ऑनलोड का उपयोग करते थे, जिसे सभी छवियों/सीएसएस/आदि के बाद निकाल दिया गया था और प्रस्तुत किया गया था। अब हमारे पास डोमरेडी है जो डीओएम को पार्स और प्रतिनिधित्व के बाद आग लगती है, लेकिन संभावित रूप से छवियों/आदि से पहले। यह भी अपेक्षाकृत नई प्रगति है। तो OnDomReady की प्रतीक्षा हमारे पास इस बिंदु पर है और यह मजबूती के लिए सबसे अच्छा समाधान है। यदि आप मानते हैं कि डॉमरेडी से पहले आपका हेरफेर इसके लायक है और आप संलग्न नोड्स में नोड्स को जोड़/बनाने/स्थानांतरित नहीं कर रहे हैं तो आप शायद ठीक हैं। –
ग्रेट, यह निश्चित रूप से इसके लायक है अगर यह काम करता है .. जो मैं सुन रहा हूं, उससे ठीक काम करना चाहिए, लेकिन कुछ भी आधिकारिक तौर पर यह नहीं बताता कि एक तत्व अपने बंद नोड के बाद तैयार होना चाहिए। – meandmycode