آموزش رایگان جاوا اسکریپت (JavaScript)

آموزش ایجاد و حذف المان‌های DOM به صورت داینامیک با جاوا اسکریپت: راهنمای جامع و کاربردی

1403/08/02 21:21 محراب حسن زاده
آموزش ایجاد و حذف المان‌های DOM به صورت داینامیک با جاوا اسکریپت: راهنمای جامع و کاربردی
ایجاد و حذف المان‌های DOM به صورت داینامیک یکی از امکانات مهم و کاربردی در توسعه صفحات وب پویا است. با استفاده از این ویژگی، می‌توانید به صورت بلادرنگ (real-time) المان‌های HTML را به صفحه اضافه یا از آن حذف کنید، به این ترتیب صفحات وب تعاملی و کاربرپسندتری بسازید. در این مقاله به آموزش ایجاد و حذف المان‌های DOM به صورت داینامیک با جاوااسکریپت می‌پردازیم و همچنین نکات بهینه‌سازی مرتبط با سئو را بر اساس استانداردهای گوگل مرور می‌کنیم.

DOM چیست؟

DOM (Document Object Model) نمایی درختی از محتوای HTML و XML است که به وسیله‌ی آن می‌توانید به المان‌های صفحه وب دسترسی پیدا کرده، آن‌ها را تغییر دهید، اضافه کنید یا حذف کنید. با استفاده از جاوااسکریپت، می‌توان به المان‌های DOM دسترسی پیدا کرد و آن‌ها را به صورت داینامیک مدیریت کرد.


ایجاد المان‌های DOM به صورت داینامیک

یکی از روش‌های قدرتمند جاوااسکریپت برای مدیریت محتوا در صفحات وب، ایجاد المان‌های HTML به صورت داینامیک است. این فرآیند معمولاً در برنامه‌های وب تعاملی، مانند اضافه کردن آیتم‌های جدید به لیست‌ها یا نمایش پیام‌های جدید به کاربران، استفاده می‌شود.


استفاده از createElement

برای ایجاد یک المان جدید در DOM، می‌توان از متد createElement استفاده کرد. این متد یک المان جدید بر اساس نام تگ HTML که به آن داده می‌شود، ایجاد می‌کند.

مثال:



< div id="container" > < / div >

< script >
  // ایجاد یک المان جدید < p >
  let newParagraph = document.createElement('p');
  newParagraph.textContent = 'This is a dynamically added paragraph.';

  // اضافه کردن المان جدید به داخل یک المان موجود
  let container = document.getElementById('container');
  container.appendChild(newParagraph);
< / script >


در این مثال، ابتدا یک عنصر < p > ایجاد می‌شود و سپس به یک بخش موجود با شناسه container اضافه می‌شود. این فرآیند بدون نیاز به بارگذاری مجدد صفحه انجام می‌شود.


اضافه کردن چندین المان

اگر بخواهید چندین المان به صورت داینامیک به صفحه اضافه کنید، می‌توانید با استفاده از یک حلقه یا تکرارگر این کار را انجام دهید.

مثال:



< ul id="list" > < / ul >

< script >
  let ulElement = document.getElementById('list');

  for (let i = 1; i <= 5; i++) {
      let liElement = document.createElement('li');
      liElement.textContent = `Item ${i}`;
      ulElement.appendChild(liElement);
  }
< / script >


در این مثال، پنج عنصر < li > به صورت داینامیک به یک لیست < ul > اضافه می‌شود.


اضافه کردن المان‌ها با ویژگی‌های خاص

شما می‌توانید هنگام ایجاد یک المان جدید، ویژگی‌هایی مانند کلاس‌ها، شناسه‌ها، و داده‌های دلخواه به آن اضافه کنید.



< button id="addButton" > Add Item < / button >
< ul id="list" > < / ul >

< script >
  let addButton = document.getElementById('addButton');
  addButton.addEventListener('click', function() {
      let newItem = document.createElement('li');
      newItem.textContent = 'New Item';
      newItem.setAttribute('class', 'list-item');

      document.getElementById('list').appendChild(newItem);
  });
< / script >


در این مثال، با هر بار کلیک روی دکمه "Add Item"، یک آیتم جدید به لیست اضافه می‌شود و کلاس list-item به آن تخصیص می‌یابد.


حذف المان‌های DOM به صورت داینامیک

برای حذف المان‌های DOM، می‌توان از متدهای removeChild یا remove استفاده کرد. این متدها به شما امکان می‌دهند المان‌های موجود را از صفحه حذف کنید.


حذف المان با استفاده از removeChild

متد removeChild برای حذف یک فرزند از المان والد استفاده می‌شود.

مثال:



< ul id="list" >
  < li id="item1" > Item 1 < / li >
  < li id="item2" > Item 2 < / li >
< / ul >
< button id="removeButton" > Remove Item < / button >

< script >
  let removeButton = document.getElementById('removeButton');
  removeButton.addEventListener('click', function() {
      let list = document.getElementById('list');
      let itemToRemove = document.getElementById('item1');
      list.removeChild(itemToRemove);
  });
< / script >


در این مثال، با کلیک روی دکمه، اولین آیتم لیست (Item 1) از لیست حذف می‌شود.


حذف مستقیم المان با remove

متد remove به طور مستقیم المان هدف را از DOM حذف می‌کند.

مثال:



< div id="container" >
  < p id="paragraph" > This is a paragraph. < / p >
< / div >
< button id="removeButton" > Remove Paragraph < / button >

< script >
  let removeButton = document.getElementById('removeButton');
  removeButton.addEventListener('click', function() {
      let paragraph = document.getElementById('paragraph');
      paragraph.remove();
  });
< / script >


در این مثال، پاراگراف با شناسه paragraph به طور مستقیم حذف می‌شود.


بهینه‌سازی و نکات سئو

برای بهبود عملکرد سایت و رعایت اصول سئو هنگام دستکاری المان‌های DOM، نکات زیر را در نظر داشته باشید:

  • کاهش تغییرات غیرضروری در DOM: هر بار که تغییرات زیادی در DOM اعمال می‌کنید، مرورگر باید صفحه را مجدداً رندر کند. این کار ممکن است باعث کاهش سرعت بارگذاری صفحه و تجربه کاربری نامطلوب شود. به جای انجام چندین تغییر جداگانه، تغییرات را دسته‌بندی کنید و به صورت بهینه اعمال کنید.

  • استفاده از Fragmentها: زمانی که می‌خواهید چندین المان به یکباره به DOM اضافه کنید، از DocumentFragment استفاده کنید تا تغییرات یکجا اعمال شوند.

مثال استفاده از DocumentFragment:



let fragment = document.createDocumentFragment();
for (let i = 1; i <= 5; i++) {
  let li = document.createElement('li');
  li.textContent = `Item ${i}`;
  fragment.appendChild(li);
}
document.getElementById('list').appendChild(fragment);


  • Lazy Loading (بارگذاری تنبل): از تکنیک بارگذاری تنبل برای بهبود زمان بارگذاری اولیه سایت استفاده کنید و المان‌های سنگین را تنها زمانی بارگذاری کنید که کاربر به آن‌ها نیاز دارد.

  • بارگذاری محتوا بر اساس تعامل کاربر: محتوای داینامیک را تنها زمانی ایجاد یا حذف کنید که کاربر تعامل برقرار کرده باشد (مانند کلیک یا اسکرول). این کار باعث افزایش سرعت و کاهش بار روی سرور می‌شود.

  • استفاده از کلاس‌ها به جای تغییر مستقیم استایل‌ها: در هنگام ایجاد المان‌های داینامیک، به جای استفاده از style برای هر المان، کلاس‌های CSS از پیش تعریف‌شده استفاده کنید. این کار کد را تمیزتر و مدیریت آن را ساده‌تر می‌کند.


نتیجه‌گیری

ایجاد و حذف المان‌های DOM به صورت داینامیک با جاوااسکریپت یکی از ابزارهای قدرتمند برای توسعه وب است که به شما این امکان را می‌دهد تا صفحات تعاملی و کاربرپسندی بسازید. با استفاده از متدهای مانند createElement برای ایجاد المان‌ها و remove برای حذف آن‌ها، می‌توانید به راحتی محتوای صفحات خود را مدیریت کنید. همچنین با رعایت نکات بهینه‌سازی مرتبط با سئو و بهبود عملکرد، می‌توانید تجربه کاربری بهتری ارائه دهید و رتبه سایت خود را در موتورهای جستجو بهبود بخشید.

پرسش و پاسخ

نظری یافت نشد

مطالب مشابه

نصب Node.js و Create React App: شروع پروژه‌های React.js به‌صورت آسان
1402/06/28 01:09

نصب Node.js و Create React App: شروع پروژه‌های React.js به‌صورت آسان

مطالعه بیشتر
آموزش متغیرهای سفارشی (Custom Properties) در CSS: نحوه تعریف و استفاده از var
1402/06/18 22:41

آموزش متغیرهای سفارشی (Custom Properties) در CSS: نحوه تعریف و استفاده از var

مطالعه بیشتر
استفاده از Viewports و Viewport Units در CSS: طراحی واکنش‌گرا با vw، vh، vmin و vmax
1403/08/16 22:30

استفاده از Viewports و Viewport Units در CSS: طراحی واکنش‌گرا با vw، vh، vmin و vmax

مطالعه بیشتر
آموزش تگ‌های زمان و مکان در HTML: استفاده از time و location در صفحات وب
1402/05/29 21:13

آموزش تگ‌های زمان و مکان در HTML: استفاده از time و location در صفحات وب

مطالعه بیشتر
تفاوت Data و Computed Properties در Vue.js | آموزش کاربردی و مثال‌محور
1404/09/21 23:58

تفاوت Data و Computed Properties در Vue.js | آموزش کاربردی و مثال‌محور

مطالعه بیشتر
استفاده از Flexbox در CSS برای چیدمان‌های مدرن: راهنمای جامع و کاربردی
1403/08/10 21:59

استفاده از Flexbox در CSS برای چیدمان‌های مدرن: راهنمای جامع و کاربردی

مطالعه بیشتر
آموزش توسعه بازی‌های ساده با استفاده از جاوا اسکریپت و Canvas API: راهنمای گام به گام
1403/08/05 21:06

آموزش توسعه بازی‌های ساده با استفاده از جاوا اسکریپت و Canvas API: راهنمای گام به گام

مطالعه بیشتر
استفاده از calc در CSS: محاسبات پویا برای طراحی‌های منعطف
1403/08/12 19:43

استفاده از calc در CSS: محاسبات پویا برای طراحی‌های منعطف

مطالعه بیشتر
آموزش جامع اینترفیس‌ها و کلاس‌ها (Classes) در ES6 جاوا اسکریپت: مفاهیم و کاربردها
1403/07/28 21:31

آموزش جامع اینترفیس‌ها و کلاس‌ها (Classes) در ES6 جاوا اسکریپت: مفاهیم و کاربردها

مطالعه بیشتر
مفاهیم Promise و چگونگی استفاده از آن در جاوا اسکریپت: راهنمای کامل همراه با مثال‌ها
1403/07/30 20:38

مفاهیم Promise و چگونگی استفاده از آن در جاوا اسکریپت: راهنمای کامل همراه با مثال‌ها

مطالعه بیشتر
آموزش جامع توابع در جاوا اسکریپت: نحوه تعریف، فراخوانی و بازگشت مقادیر
1402/11/02 23:23

آموزش جامع توابع در جاوا اسکریپت: نحوه تعریف، فراخوانی و بازگشت مقادیر

مطالعه بیشتر
نصب Vue.js و ایجاد پروژه ساده: آموزش گام‌به‌گام راه‌اندازی Vue
1402/06/28 00:41

نصب Vue.js و ایجاد پروژه ساده: آموزش گام‌به‌گام راه‌اندازی Vue

مطالعه بیشتر

تمامی حقوق معتلق به ناشر سایت است و کپی از آن پیگرد قانونی دارد