• يحتوي AddEventListener على 3 معلمات ، كما هو موضح أدناه:
element.addeventListener (النوع ، المستمع ، usecapture) ؛
| المعلمة | وصف المعلمة |
|---|---|
| عنصر | الكائن لربط الحدث وعقدة HTML. |
| يكتب | للحصول على اسم الحدث ، يرجى إزالة "ON" قبل الحدث. على سبيل المثال ، يجب كتابة "onclick" على أنها "انقر" ، و "onMouseover" يجب أن تتم كتابة "Mouseover". |
| المستمع | لربط وظيفة الاستماع للحدث ، احرص على كتابة اسم الوظيفة فقط وعدم تضمين قوسين. |
| UserCapture | يمكن أن تكون طريقة مراقبة الحدث صحيحة وخطأ فقط: صحيح ، اعتماد وضع الالتقاط ؛ خطأ ، تبني وضع الفقاعة. إذا لم تكن هناك متطلبات خاصة ، فهي خاطئة بشكل عام. |
من الضروري هنا التحدث عن الفرق بين وضع الالتقاط ووضع الفقاعة.
كما هو موضح في الشكل ، هناك طبقتان من عناصر Div ، وكلاهما محدد أحداث النقر. بشكل عام ، إذا قمت بالنقر فوق العنصر الأزرق الداخلي ، فلن يؤدي فقط إلى تشغيل حدث النقر للعنصر الأزرق فحسب ، بل يؤدي أيضًا إلى تشغيل حدث النقر للعنصر الأحمر في نفس الوقت. تتمثل المعلمة USECapture في التحكم في ترتيب أحداث النقرات في هذا الوقت. إذا كان خطأ ، فسيتم استخدام وضع الفقاعة. إنها عملية من الداخل إلى الخارج ، لذلك سيتم تنفيذ حدث النقر للعنصر الأزرق أولاً ثم حدث النقر للعنصر الأحمر. إذا كان هذا صحيحًا ، فهو وضع الالتقاط. على عكس وضع الفقاعة ، فهو من الخارج إلى الداخل. سيتم تنفيذ حدث النقر للعنصر الأحمر أولاً قبل تنفيذ حدث النقر للعنصر الأزرق.
إذا كان usecapture المستخدمة من قبل عناصر من الطبقات المختلفة مختلفة ، فسيبحث العنصر الهدف أولاً عن الأحداث التي تم تعيينها لالتقاط الوضع من العنصر الخارجي. بعد الوصول إلى العنصر المستهدف لتنفيذ حدث العنصر المستهدف ، ثم ابحث عن الأحداث التي تم تعيينها على وضع الفقاعة.
• يحتوي الملحق على 2 معلمات ، كما هو موضح أدناه:
element.attachevent (النوع ، المستمع) ؛
| المعلمة | وصف المعلمة |
|---|---|
| عنصر | الكائن لربط الحدث وعقدة HTML. |
| يكتب | للحصول على اسم الحدث ، يرجى إضافة "على" قبل الحدث ، مثل "OnClick" و "onMouseover" ، وهو الفرق من AddeventListener. |
| المستمع | لربط وظيفة الاستماع للحدث ، احرص على كتابة اسم الوظيفة فقط وعدم تضمين قوسين. |
AddEventListener () هي طريقة قياسية لربط وظيفة الاستماع للحدث ، والتي تدعمها W3C. Chrome ، Firefox ، Opera ، Safari ، IE9.0 وقبل كل شيء يدعم هذه الوظيفة ؛ ومع ذلك ، لا تدعم IE8.0 و أدناه هذه الطريقة ، فهي تستخدم AttannEvent () لربط وظيفة الاستماع للحدث. لذلك ، يجب أن تتعامل طريقة الحدث الملزمة هذه مع مشكلات توافق المتصفح.
رمز متوافق مع IE و INE Browser Event Binding:
وظيفة AddEvent (obj ، type ، handle) {try {// chrome ، firefox ، opera ، safari ، ie9.0 وما فوق الإصدارات obj.addeventListener (النوع ، مقبض ، خطأ) ؛ } catch (e) {try {// ie8.0 وأقل إصدارات obj.attachevent ('on' + type ، handle) ؛ } catch (e) {// browser obj ['on' + type] = handle ؛ }}}أو
دالة regevent (eLe ، event_name ، fun) {if (window.attachevent) ele.attachevent (event_name ، fun) ؛ // ie browser else {event_name = event_name.replace (/^on/، "") ؛ // إذا كان في البداية ، حذفه ، مثل onClick-> انقر فوق ele.addeventListener (event_name ، المرح ، false) ؛ // المتصفح غير IE}}تتحدث المقالة أعلاه لفترة وجيزة عن الفرق بين AddeventListener و Attachevent هو كل المحتوى الذي أشاركه معك. آمل أن تتمكن من إعطائك مرجعًا وآمل أن تتمكن من دعم wulin.com أكثر.