هر صفحه وب در یک پنجره مرورگر قراردارد که می تواند به عنوان یک شیء در نظر گرفته شود. یک شیء Document نشان دهنده سند HTML است که در آن پنجره نمایش داده می شود. شی Document دارای چندین ویژگی است که به دیگر اشیا رجوع کرده و اجازه دستیابی و اصلاح محتوای سند را می دهد.
روشی که محتوای سند قابل دستیابی و اصلاح میشود را Document Object Model یا DOM می نامند. اشیا در یک سلسله مراتب سازماندهی شده اند. این ساختار سلسله مراتبی برای سازماندهی اشیاء در یک سند وب اجرا می شوند.
در اینجا ساختار سلسله مراتبی ساده ای از چند شیء مهم قرار دارد:
چندین DOM وجود دارد. در بخش های بعد درمورد جزییات هرکدام از DOMها و روش استفاده آن برای دستیابی و اصلاح سند توضیح داده خواهد شد.
اگر بخواهید اسکریپتی انعطاف پذیر برای استفاده از W3C DOM یا IE 4 DOM بسته به نوع توانایی شان، بنویسید، می توانید از یک دیدگاه capability-testing استفاده کنید که ابتدا وجود یک متد یا ویژگی را ارزیابی کرده تا قابلیت مورد انتظار آن را بررسی کند. به عنوان مثال:
if (document.getElementById) { // If the W3C method exists, use it } else if (document.all) { // If the all[] array exists, use it } else { // Otherwise use the legacy DOM }