أحداث الاتصال:
كائن الحدث
ما هو كائن الحدث؟ ستنشئ الأحداث على DOM المشغلة حدث كائن حدث. على سبيل المثال ، عندما ينقر الماوس ، ستقوم بإنشاء نوع النقر والعنصر الذي تحتاجه لإرساله.
يتم استخدام سمة نوع كائن حدث DOM للحصول على كائن الحدث ، يتم استخدام السمة الهدف للحصول على هدف الحدث ، وتمنع طريقة StopPropagation () الحدث من الفقاعات. السلوك الافتراضي لـ PreventDefault يحجب الحدث.
تُستخدم سمة نوع كائن الحدث في IE للحصول على كائن الحدث ، ويتم استخدام سمة srcelement للحصول على سمة Event Target CancelBubble لمنع ضبط فقاعات الأحداث على صواب للإشارة إلى أنه تم حظره يعني أنه لا يحظر.
يتم تعيين السلوك الافتراضي لخاصية ReturnValue لحظر الأحداث على خطأ للإشارة إلى الحظر.
نسخة الكود كما يلي:
// متوافق مع معالجة الأحداث المتقاطعة لكل متصفح --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
var eventHandle = {
// العنصر: العنصر ، النوع: انقر فوق الحدث ، المقبض: الطريقة التي تم تنفيذها
// إضافة مقبض
AddEventHandle: وظيفة (عنصر ، نوع ، معالج) {
if (element.addeventListener) {
element.addeventListener (النوع ، معالج ، خطأ) ؛ // --- خطأ // يمثل مستوى الفقاعة DOM2
}
آخر إذا (element.attachevent) {
element.attachevent ("on"+type ، handler) ؛
} آخر {
عنصر ["ON" + type] = معالج ؛
}
} ،
// حذف معالجة المقبض لا يعمل
removeEventHandle: function (element ، type ، handler) {
if (element.removeeventListener) {// دعم نوع معالجة الأحداث على مستوى DOM2
element.RemoveEventListener (النوع ، معالج ، خطأ) ؛ // --- خطأ // يمثل الفقاعة
}
آخر إذا (element.detachevent) {
element.detachevent ("on"+type ، handler) ؛ // دعم أي
} آخر {
العنصر ["ON" + type] = null ؛ // DOM0 Level Event معالجة أحداث النقر التقليدية
}
} ،
// احصل على جميع الكائنات المتوافقة مع المتصفح
getevent: وظيفة (حدث) {
حدث العودة؟ الحدث: window.event ؛ // ما هو مطلوب في الإصدار السفلي من متصفح IE هو نافذة.
} ،
// هل هي نقرة أو ماوس لنقل نوع الحدث
gettype: function (event) {
return event.type ؛
} ،
// احصل على العنصر الحالي
getElement: Function (event) {
Return event.target || Event.Srcelement ؛
} ،
// السلوك الافتراضي لحظر الأحداث
: وظيفة (حدث) {
if (event.preventDefault) {
Event.PreventDefault () ؛
}
آخر {
Event.ReturnValue = false ؛
}
} ،
// توقف عن فقاعة الأحداث
التوقف: وظيفة (حدث) {
if (event.stopPropagation) {
event.stoppropagation () ؛
}
آخر {
event.cancelBubble = true ؛
}
}
}