در مطالب قبلی در مورد مدل DOM در زبان برنامه نویسیHTML صحبت کردیم و با این مفهوم آشنا شدیم. و فهمیدیم که DOM یک شیوه یا مدل استاندارد ، برای دسترسی به کلیه عناصر درون یک سند HTML را ارائه می دهد در این مطلب در مورد ارتباط و سلسله مراتب در گره ها در مدل DOM در زبان HTML صحبت می کنیم.
همانطور که در بخش مقدمه مدل DOM گفتیم ، این مدل دارای یک سیستم سلسله مراتبی برای رده بندی عناصر در یک صفحه HTML است . بر این اساس ، گره ها نیز در مدل DOM دارای همان ترتیب سلسله مراتبی هستند . به عبارت دیگر ، گره ها در مدل DOM ، از گره صفحه یا document شروع شده و به ترتیب به گره های رده پایین تر ادامه می یابند تا به متن ها که در پایین ترین رده گره ها هستند ، برسند . برای درک بهتر به مثال زیر و توضیحات آن دقت کنید :
در قطعه کد بالا ، تمامی گره ها ( Nodes ) به هم مرتبط بوده و دارای رده سلسله مراتب نسبت به هم می باشند .
هر گره ای به جزء گره صفحه ( document Node ) دارای یک گره مادر ( parent Node ) می باشد . گره مادر گره ای است که در سیستم سلسه مراتبی یک رده بالاتر از گره ای که مادر آن است بوده و در واقع شامل آن می شود . برای مثال در قطعه کد فوق ، گره مادر گره های < head > و < body > گره < html > است و یا گره مادر عبارت متنی Matn Safhe ، گره < p > می باشد .
بیشتر گره ها نیز ممکن است دارای یک یا چندین فرزند ( child Node ) باشند . گره فرزند ، گره ای است که در سیستم سلسله مراتبی یک رده پایین تر از گره مادر بوده و در واقع زیر مجموعه آن محسوب می شود . برای مثال در قطعه کد فوق گره < html > دارای ۲ گره فرزند < head > و < body > بوده و یا عبارت متنی Titr Safhe گره فرزند تگ < h1 > محسوب می شود .
گره ها زمانی که دارای مادر مشترک هستند ، برادر خواهر محسوب می شوند . برای مثال در قطعه کد فوق دو گره < head > و < body > ، به دلیل اینکه گره مادر هر دو آنها مشترک بوده و مادر آنها تگ < html > است ، خواهر برادر خوانده می شوند .
همچنین گره ها می توانند دارای نوه باشند . گره نوه ، گره ای است که بیش از یک رده از گره جد خود پایین تر بوده و در واقع فرزند فرزند یک گره باشد . برای مثال در قطعه کد فوق تمامی عبارت های متنی ، نوه گره < html > بوده و نیز گره متنی Page Title نوه گره < head > محسوب می شود .
نکته : یک گره زمانی نوه جد خود محسوب می شود که بر اساس استاندارد های کدنویسی به زبان HTML ، زیر مجموعه آن تگ باشد . به عنوان مثال گره متنی Titr Safhe بیش از یک رده از گره < head > پایین تر است ، ولی به دلیل اینکه در زیر مجموعه تگ < head > قرار ندارد ، نوه آن محسوب نمی شود .
به علاوه گره ها می تواندد دارای جد نیز باشند . جد یک گره ، گره ای است که بیش از یک رده از گره نوه خود بالاتر بوده و در واقع مادر مادر آن گره محسوب می شود . برای مثال جد گره های < h1 > و < p > ، گره < html > است