2010-11-29 23 views
14

के बीच संबंध से उलझन में डीओएम और एचटीएमएल कैसे संबंधित हैं? क्या एक दूसरे का सबसेट है, एक दूसरे की तुलना में एक और अधिक अमूर्त अवधारणा है? क्या HTML डीओएम का विस्तार है? या क्या वे बल्कि असंबंधित अवधारणाओं का वर्णन करते हैं (केवल उसमें संबंधित है जिसे आप HTML से डीओएम में बदल सकते हैं)? यदि आपको यह करना था तो आप इन तस्वीरों को एक तस्वीर में कैसे आकर्षित करेंगे?डोम और एचटीएमएल (एपीआई)

उदाहरण के लिए, इन अंतर चश्मा का उद्देश्य क्या है। http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html#ID-1176245063-h2, जो

है: दोनों पहली और आखिरी लिंक HTMLElement ..

  1. http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/
  2. http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/
  3. http://www.w3.org/TR/html5/

बारे में जानकारी होती मैं इस सवाल यहाँ करने के लिए एक संभावित जवाब मिला

HTML- विशिष्ट DOM API के लक्ष्य हैं:

  • विशेषज्ञ और उस HTML दस्तावेज़ और तत्वों
  • के लिए विशेष रूप से संबंधित है कार्यक्षमता जोड़ने के लिए ...
  • सुविधा तंत्र, प्रदान करने के लिए जहां उपयुक्त हो, HTML दस्तावेज़ पर आम और लगातार आपरेशन के लिए।

इसका मतलब यह है कि सूची में 3 ऊपर दिया गया लिंक DOM कोर, जो कि 1 लिंक में वर्णित फैली है?

या यदि आप डोम कोर लागू करते हैं, जो आपको सरल दस्तावेज़ों में हेरफेर करने की अनुमति देता है, लेकिन यदि आप एचटीएमएल लागू करते हैं, तो यह आपको एक सुपर-डॉम की तरह देता है जो आपको अधिक जटिल वस्तुओं में हेरफेर करने की अनुमति देता है?

अंत में, आप अपने ब्राउज़र को कार्यान्वित करना चाहते हैं जो केवल HTML5 वेबसाइटें खोलने में सक्षम है (प्रस्तुत करें, साथ ही समर्थन जावास्क्रिप्ट)। क्या यह तीसरे लिंक में दिए गए विनिर्देश को पढ़ने के लिए पर्याप्त है, या क्या आपको पहले डीओएम में प्रदान की गई सभी चीजों को लागू करने की आवश्यकता है और फिर HTML5 विशिष्ट चीजों को लागू करना है?

अद्यतन
मुझे लगता है मैं डोम एपीआई बनाम HTML API बनाम डोम HTML API बनाम HTML डोम एपीआई के बारे में सोच रहा हूँ।

+0

नोट, वर्तमान डोम कोर मानक डोम कोर 3 है, डोम कोर 2. –

+1

@mlvljr, क्या एक मूर्ख सवाल है। –

+0

@NathanMacInnes आह, तो मैं तुम्हें वहाँ मिला! :) – mlvljr

उत्तर

9

एचटीएमएल टेक्स्ट है और एचओएम वर्णित पेड़ का प्रतिनिधित्व करने के लिए इन-मेमोरी ऑब्जेक्ट मॉडल है।

10

एचटीएमएल स्पेक एक विशिष्ट वाक्यविन्यास के साथ एक पाठ दस्तावेज़ के संदर्भ में एचटीएमएल का वर्णन करता है। दूसरी ओर डोम ऑब्जेक्ट-मॉडल का वर्णन करता है जो ब्राउजर उत्पन्न करता है, जब यह HTML दस्तावेज़ को पार करता है। लेकिन दोनों चश्मा एक ही सार मॉडल का वर्णन करते हैं जो एचटीएमएल के तत्व और गुण हैं।

डीओएम-कोर ऑब्जेक्ट मॉडल है जो तत्वों और विशेषताओं के साथ सभी एक्सएमएल दस्तावेज़ों (एचटीएमएल सहित) के लिए आम है। एचटीएमएल-डॉम विभिन्न एचटीएमएल तत्वों के लिए अधिक विशिष्ट इंटरफेस के साथ कोर डोम का विस्तार है।

9

संक्षेप में: - जो टैग/विशेषता मौजूद न होने और उनके अर्थ

एचटीएमएल मानकों एचटीएमएल भाषा परिभाषित करते हैं।

डीओएम मानक ब्राउज़र में डीओएम ऑब्जेक्ट पेड़ से ऑब्जेक्ट्स द्वारा कार्यान्वित इंटरफेस को परिभाषित करते हैं। (वेब ब्राउज़र एचटीएमएल स्रोत कोड का विश्लेषण करता है और इसके आधार पर एक ऑब्जेक्ट पेड़ बनाता है। उस पेड़ की ऑब्जेक्ट्स में गुण होते हैं जिन्हें डीओएम (और अन्य) मानकों द्वारा परिभाषित किया जाता है।)

एचटीएमएल 5 मानक सामान के लिए इंटरफेस को भी परिभाषित करता है जिसे पहले परिभाषित नहीं किया गया था - जैसे कि विंडो ऑब्जेक्ट, नेविगेटर और हिस्ट्री ऑब्जेक्ट, चेतावनी और प्रॉम्प्ट, टाइमआउट फ़ंक्शन इत्यादि जैसे वैश्विक फ़ंक्शन

विभिन्न मानकों एक-दूसरे के सबसेट नहीं हैं - वे केवल विशिष्ट मानक हैं पूरी तस्वीर के एक टुकड़े को परिभाषित करें।

+0

वह पूरी तस्वीर क्या है? – Karolis

+1

@ करोलिस ब्राउज़र में ऑब्जेक्ट मॉडल - कौन सा ऑब्जेक्ट ब्राउज़र में रहता है और उनकी गुण क्या हैं। ब्राउजर एपीआई मानकों के लिए यह पूरी तस्वीर होगी। –

5

कहीं और उत्तर दिया, लेकिन जाहिरा तौर पर हम embrace (some) duplication करने वाले रहे हैं:

दस्तावेज़ ऑब्जेक्ट मॉडल ब्राउज़र के HTML के आंतरिक प्रतिनिधित्व है। यह 'बच्चों' के विचार पर आधारित है। तो एक <p> टैग कई पाठ नोड्स और कई <span> टैग, इस तरह शामिल हो सकता है:

<p><span>Hello,</span> this is some text. <span>It</span> is just a short paragraph</p> 

यह <p> टैग 4 बच्चे हैं: दो <span> है, और दो पाठ नोड्स (this is some text और is just a short paragraph)। टेक्स्ट के अन्य बिट्स उनके संबंधित <span> टैग के बच्चे हैं।

ब्राउज़र अपनी आंतरिक मेमोरी में इस जानकारी को संग्रहीत करता है (केवल एचटीएमएल की एक बड़ी धारा को संग्रहीत करने के लिए, जो प्रक्रिया करना बहुत मुश्किल है)। यह कैस्केडिंग स्टाइल शीट्स (सीएसएस) का उपयोग करके इसे प्रारूपित करना और जावास्क्रिप्ट का उपयोग करके इसमें बदलाव करने के लिए बनाता है (भागों को बनाएं और हटाएं, एक पैरेंट को दूसरे माता-पिता से ले जाएं, आदि)।

एचटीएमएल के सभी संस्करण (शायद शुरुआती लोगों को छोड़कर) डीओएम का उपयोग करते हैं। प्रत्येक संस्करण में नियम होते हैं, जैसे कि कौन से टैग मान्य हैं, और प्रत्येक तत्व के लिए बच्चे कौन हो सकते हैं। एचटीएमएल को प्रोसेस करते समय और इसके डीओएम प्रस्तुति के निर्माण के दौरान ये नियम लागू किए जाते हैं।

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