عندما يحتاج تطبيقك إلى الاعتماد على مكتبة جافا سكريبت معينة ، ستحاول عن غير قصد حل مشاكل بعض مكتبة الفصل نفسها ، بدلاً من مشاكل اللغة. على سبيل المثال ، عندما أحاول لف النص (الذي قد يحتوي أيضًا على عناصر HTML) مع عنصر DIV. افترض أن هناك HTML التالي:
هذا بعض النص و <a href = ""> رابط </a>
في هذا الوقت ، إذا كنت تريد تحويله إلى ما يلي:
<viv> هذا هو بعض النص و <a href = ""> رابط </a> <viv>
أسهل طريقة للوقت الغاشم هي أنه يمكنك إجراء تحديثات على العنصر الأصل عبر خاصية .innerHTML ، ولكن المشكلة هي أن جميع الاستماع إلى الأحداث سيكون غير صالح لأنه سيتم إعادة إنشاء عنصر HTML عند استخدام InnerHTML. هذا هو كأس كبير! لذلك في هذا الوقت ، يمكنك فقط استخدام JavaScript لتحقيق ذلك - هناك عيب وقيد. هنا هو رمز التنفيذ:
var newWrapper = document.createElement ('div') ؛ بينما (fresentParent.firstchild) {// نقل عنصر DOM ، newWrapper.appendChild (fresentParent.firstchild) ؛ }لا يمكنك استخدام A for loop هنا لأن الأطفال هي مجموعة من العقد الديناميكية ، وطالما قمت بنقل العقدة ، فسيؤثر ذلك على قيمة الفهرس. نحن نستخدم حلقة فترة لاكتشاف Firstchild للعنصر الأصل. إذا أعادت قيمة تمثل خطأ ، فأنت تعلم أنه تم نقل جميع العقد إلى الوالد الجديد!