آموزش کامل و حرفه ای DOM در زبان جاوا اسکریپت (بخش اول)
جلسات دوره
مدرس:
مهدی عباسی
18
سال سابقه برنامهنویسی و تدریس برنامهنویسی
کسب مقامهای اول و دوم کشوری در مسابقات برنامهنویسی
مهدی عباسی هستم، مسلط به حداقل ۲۰ زبان مطرح برنامه نویسی به صورت پیشرفته، مدیر عامل شرکت آریا نرم افزار و بنیانگذار آکادمی درسمن، مسلط به تدریس دروس تخصصی کاردانی و کارشناسی کامپیوتر، پایگاه داده ها، برنامه نویسی پیشرفته، مبانی برنامه نویسی، مباحث ویژه طراحی وب و .... مشاهده رزومه
معرفی مدلهای BOM و DOM و پویایی عناصر صفحه وب
معرفی مدل DOM (Document Object Model)
در صفحهی ایجاد شده در بخش body عناصری را همانند زیر اضافه میکنیم.
<div>
<img src="images/1.webp"/>
<img src="images/2.webp"/>
<img src="images/3.webp"/>
<img src="images/4.webp"/>
</div>
<h1>
darsman.com
</h1>
<p>
دروه آموزشی زبان برنامه نویسی جاوا اسکریپت
</p>
<ul>
<li>Item1</li>
<li>Item2</li>
<li>Item3</li>
<li>Item4</li>
</ul>
در زبان برنامه نویسی Html یک ساختار درختی با نام DOM و جود دارد، در این ساختار تگ های داخل یک صفحه دارای والد و فرزندی هستند.
برای مثال در عناصری که بالا ایجاد کردیم همین ساختار وجود دارد.
عنصر div دارای والدی به نام body است و همین عنصر فرزندی به نام img دارد.
در بحث ساختار DOM عناصر میتوانند همزاد باشند، در بالا تگ div با تگ p همزاد است چرا که در یک رده قرار گرفته اند و هر دو فرزند body میباشند.
پیدا کردن عناصر در صفحه:
از ایجاد این ساختار هدفی وجود دارد که چگونه میتوان یک عنصر را حذف کرد یا اینکه اضافه کرد.
که با استفاده از زبان برنامه نویسی جاوا اسکریپت در بحث DOM ممکن میشود.
برای کار کردن با DOM از کلاس Document استفاده میکنیم با استفاده از این کلمه ما میتوانیم به همه اشیاء داخل صفحه دسترسی پیدا کینم.
حال برای اینکه به یک عنصر در صفحه دسترسی پیدا کینم از کلمه کلیدی .getElementById() بعد از document استفاده میکنیم که برای دسترسی نیاز به id عنصر مورد نظر دارد.
document.getElementById("id");
در ادامه بعد از اینکه عنصر مورد نظر را پیدا کرد درون یک متغییر قرار میدهیم و تغییراتی را بر روی آن متغییر اعمال میکنیم.
var element=document.getElementById("img1");
element.style.border="1px solid #ffff00"
در صفحات html گاهی به وجود میآید که به چندین عنصر در صفحه دسترسی پیدا کنیم.
در این صورت از .getElementsByClassName() استفاده میکنیم.
در این روش برای پیدا کردن نام کلاسی را میخواهد که عناصر دیگر هم آنرا دارا باشند.
و بعد از اینکه عناصر هم کلاسی را پیدا کرد باید با استفاده از حلقه for به همه دسترسی پیدا کرد و تغییراتی را بر روی آنها انجام داد.
var elemens=document.getElementsByClassName("img");
for (let index = 0; index < elemens.length; index++) {
const element = elemens[index];
element.style.border="1px solid #ff00ff"
}
در روش دیگر برای دسترسی به چندین تگ یا عنصر میتوانیم از نام تگها استفاده کنیم.
var elemens2=document.getElementsByTagName("نام تگ");
for (let index = 0; index < elemens2.length; index++) {
const element = elemens2[index];
element.style.border="1px solid #ff00ff"
}
اضافه کردن عنصر به صفحه:
موضوع بعدی اضافه کردن تگ html با زبان جاوا اسکریپت به صفحه html است.
در بخش Script به کمک متد زیر ابتدا تگ html مورد نظرمان را ایجاد میکنیم و درون یک متغییر قرار میدهیم.
var tag=document.createElement("نام تگ");
حال برای اینکه تگ ما دارای محتوای متنی باشد از متد زیر استفاده کرده و درون یک متغییر قرار میدهیم.
var text=document.createTextNode("متن مورد نظر");
حال با استفاده از متد appendChild متغییر متنی را درون متغییر از نوع tag قرار میدهیم.
tag.appendChild(text);
و در ادامه به کمکه متد بالا به صورت زیر متغییر از نوع tag را به body اضافه میکنیم.
document.body.appendChild(tag);
حذف کردن عنصر در صفحه:
برای حذف کردن عکس در صفحه ابتدا با استفاده از id آنها را پیدا میکنیم و درون یک متغییر قرار میدهیم.
var item=document.getElementById("img1");
حال با استفاده از نام عنصر،والد این عنصر را هم پیدا میکنیم.
var div=document.getElementsByTagName("div");
با استفاده از شماره خانه تگ div مورد نظر عکس را حذف میکنیم.
div[0].removeChild(img1);
نظر شما در تصمیم دیگران اثرگذار است.
لطفا برای همراهان درسمن و بهتر شدن دوره نظر خود را بنویسید.