Interface ITreeWalker

ITreeWalker interface

ट्रीवॉकर ऑब्जेक्ट्स का उपयोग दस्तावेज़ ट्री या सबट्री को उनके whatToShow फ़्लैग और फ़िल्टर (यदि कोई हो) द्वारा परिभाषित दस्तावेज़ के दृश्य का उपयोग करके नेविगेट करने के लिए किया जाता है। कोई भी फ़ंक्शन जो ट्रीवॉकर का उपयोग करके नेविगेशन करता है, स्वचालित रूप से ट्रीवॉकर द्वारा परिभाषित किसी भी दृश्य का समर्थन करेगा।

एक सबट्री के तार्किक दृश्य से नोड्स को हटाने के परिणामस्वरूप संरचना हो सकती है जो पूर्ण, अनफ़िल्टर्ड दस्तावेज़ में समान सबट्री से काफी अलग है। नोड्स जो ट्रीवॉकर दृश्य में सहोदर हैं, मूल दृश्य में अलग-अलग, व्यापक रूप से अलग-अलग नोड्स के बच्चे हो सकते हैं। उदाहरण के लिए, नोडफ़िल्टर पर विचार करें जो टेक्स्ट नोड्स और दस्तावेज़ के रूट नोड को छोड़कर सभी नोड्स को छोड़ देता है। तार्किक दृष्टि से जो परिणाम देता है, सभी टेक्स्ट नोड भाई-बहन होंगे और रूट नोड के प्रत्यक्ष बच्चों के रूप में दिखाई देंगे, कोई कोई फर्क नहीं पड़ता कि मूल दस्तावेज़ की संरचना कितनी गहरी है।

यह भी देखेंदस्तावेज़ ऑब्जेक्ट मॉडल (DOM) स्तर 2 ट्रैवर्सल और रेंज विशिष्टता. @DOM लेवल 2 के बाद से

public interface ITreeWalker : ITraversal

गुण

नामविवरण
CurrentNode { get; set; }वह नोड जिस पर ट्रीवॉकर वर्तमान में स्थित है। DOM ट्री में बदलाव के कारण वर्तमान नोड अब को ट्रीवॉकर के संबंधित फ़िल्टर द्वारा स्वीकार नहीं किया जा सकता है। करेंटनोड को स्पष्ट रूप से किसी भी नोड पर सेट किया जा सकता है, चाहे वह हो या न हो the रूट नोड द्वारा निर्दिष्ट सबट्री के भीतर या फ़िल्टर और whatToShow फ़्लैग द्वारा स्वीकार किया जाएगा। आगे ट्रैवर्सल currentNode के सापेक्ष होता है भले ही यह वर्तमान दृश्य का हिस्सा न हो, अनुरोधित दिशा में फ़िल्टर लागू करके; यदि कोई ट्रैवर्सल संभव नहीं है, तो वर्तमान नोड नहीं बदला गया है।

तरीकों

नामविवरण
FirstChild()ट्रीवॉकर को वर्तमान नोड के पहले दृश्यमान चाइल्ड पर ले जाता है, और नया नोड लौटाता है। यदि वर्तमान नोड में no दिखाई देने वाले चिल्ड्रन हैं, तो शून्य लौटाता है, और वर्तमान नोड को बनाए रखता है।
LastChild()ट्रीवॉकर को वर्तमान नोड के अंतिम दृश्य चाइल्ड में ले जाता है, और नया नोड लौटाता है। यदि वर्तमान नोड में no दिखाई देने वाले चिल्ड्रन हैं, तो शून्य लौटाता है, और वर्तमान नोड को बनाए रखता है।
NextNode()ट्रीवॉकर को वर्तमान नोड के सापेक्ष दस्तावेज़ क्रम में अगले दृश्यमान नोड पर ले जाता है, और नया नोड लौटाता है। यदि the वर्तमान नोड का कोई अगला नोड नहीं है, या यदि नेक्स्टनोड के लिए खोज ट्रीवॉकर के रूट नोड से ऊपर की ओर बढ़ने का प्रयास करती है, तो शून्य वापस आती है, और वर्तमान नोड को बनाए रखती है।
NextSibling()ट्रीवॉकर को वर्तमान नोड के अगले सहोदर में ले जाता है, और नया नोड लौटाता है। यदि वर्तमान नोड का कोई अगला सिबलिंग नहीं है, तो शून्य लौटाता है, और वर्तमान नोड को बनाए रखता है।
ParentNode()वर्तमान नोड के निकटतम दृश्यमान पूर्वज नोड को ले जाता है और लौटाता है। यदि पैरेंटनोड की खोज ट्रीवॉकर के रूट नोड से ऊपर की ओर कदम करने का प्रयास करती है, या यदि यह दृश्यमान पूर्वज नोड को खोजने में विफल रहता है, तो यह विधि की वर्तमान स्थिति को बरकरार रखती है और शून्य वापस आती है।
PreviousNode()ट्रीवॉकर को पिछले दृश्यमान नोड in दस्तावेज़ क्रम में वर्तमान नोड के सापेक्ष ले जाता है, और new नोड लौटाता है। यदि वर्तमान नोड में कोई पिछला नोड नहीं है, या यदि पिछला नोड के लिए खोज ट्रीवॉकर के रूट नोड से ऊपर की ओर बढ़ने का प्रयास करता है, तो शून्य देता है, और वर्तमान नोड को बनाए रखता है।
PreviousSibling()ट्रीवॉकर को वर्तमान नोड के पिछले सहोदर में ले जाता है, और नया नोड लौटाता है। यदि वर्तमान नोड में no दिखाई देने वाला पिछला सिबलिंग है, तो शून्य लौटाता है, और वर्तमान नोड को बनाए रखता है।

यह सभी देखें