سؤال

لدي هذا الكمان http://jsbin.com/EvIYomiF/4/ وفقط للملاحظة في حالة وجود جافا سكريبت في ملفين.

حسنًا..كما ترون في العرض التوضيحي، يتم استبدال نطاق dom بطريقة ما وأريد أن أفهم السبب.أعني أن self=هذا الاختراق هو بالتأكيد ممارسة سيئة، لكنني لا أفهم سبب الكتابة فوقه

لا أجد كلمات لوصف المشكلة، أنا آسف لذلك، لكن الكمان هو الطريقة الوحيدة التي وجدتها لشرح مشكلتي بسهولة.

هل كانت مفيدة؟

المحلول

كل التخمين حول this لا علاقة له بالموضوع والجميع يقودك إلى الطريق الخطأ.

المشكلة هي self لم يتم عزلها باستخدام var ولذلك فهو عالمي.الثاني self يكتب فوق الأول.

ببساطة صنعها var self=this يجعل كل شيء يعمل.ما قمت به هو ممارسة شائعة لتجنب تغيير سياق this داخل معالج الأحداث jQuery

تجريبي

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top