متد document.removeEventListener
مثال (متد document.removeEventListener)
یک رویداد mousemove که به وسیله ی متد() addEventListener ایجاد شده است را حذف می کند:
document.addEventListener("mousemove", myFunction);
// Remove the event handler from the document
document.removeEventListener("mousemove", myFunction);
خودتان امتحان کنید »
در انتهای این صفحه، مثال های بیشتری آورده شده است.
تعریف و کاربرد
متد document.removeEventListener() یک شنونده ی رویداد که به وسیله ی متد document.addEventListener() ایجاد شده است را حذف می کند.
نکته: برای حذف کردن شنونده های رویداد، تابع تعریف شده توسط متد addEventListener() باید یک تابع اکسترنال و دارای نام باشد، درست مانند مثال بالا(myFunction).
بنا بر این تابع های بی نام مانند تابع زیر، کار نخواهند کرد:
document.removeEventListener("event", function(){ myScript });
نکته: می توانید از متدهای element.addEventListener() و element.removeEventListener() برای اضافه یا حذف کردن شنونده های رویداد از یک عنصر مشخص شده، استفاده کنید.
پشتیبانی مرورگرها
اعداد داخل جدول زیر نشان دهنده ی اولین ورژن مرورگری است که به طور کامل از این متد پشتیبانی می کند.
متد | |||||
---|---|---|---|---|---|
removeEventListener() | 1.0 | 9.0 | 1.0 | 1.0 | 7.0 |
نکته: متد ()removeEventListener در internet Explorer8 و ورژن ها قبلی آن پشتیبانی نمی شود. و همچنین opera 7.0 و ورژن های قبلی آن. اما می توانید برای این ورژن از مرورگرها، از متد ()detachEvent برای حذف کردن شنونده های رویداد ایجاد شده توسط متد ()attachEvent برای یک راه حل مرورگری استفاده کنید.
نحوه استفاده
مقادیر پارامترها
پارامتر | توضیحات |
---|---|
event |
ضروری. یک رشته که مشخص کننده ی نام رویدادی است که قرار است حذف شود. نکته: از پیشوند "on" استفاده نکنید. بعنوان مثال از "click" به جای "onclick" استفاده کنید. |
function |
ضروری. تابعی که قرار است رویداد از آن حذف حذف شود را مشخص می کند. |
useCapture |
اختیاری. یک مقدار بولی که مشخص کننده ی فاز رویدادی است که قرار است شنونده ی رویداد از آن حذف شود.
نکته: در صورتی که شنونده ی رویداد دو بار تعریف شود، یک بار در فاز capturing و یک بار در فاز bubbling، هر کدام باید به طور جداگانه حذف شود. |
جزئیات تکنیکی
DOM Version: | DOM Level 2 events |
---|---|
مقدار برگشتی | مقدار برگشتی ندارد. |
Changelog: |
پارامتر useCapture در فایرفاکس 6 و اپرا 12.0 به صورت اختیاری در آمده است.(و همچنین در مرورکرهای کروم و سافاری و اینترنت اکسپلورر به صورت اختیاری بوده است). |
مثال - خودتان امتحان کنید
مثال (متد document.removeEventListener)
برای مرورگرهایی که از متد ()removeEventListener پشتیبانی نمی کنند، می توانید از متد ()detachEvent استفاده کنید.
این مثال یک نسخه ی نمایشی از یک راه حل مرورگری را نشان می دهد:
document.removeEventListener("mousemove", myFunction);
} else if (document.detachEvent) { // For IE 8 and earlier versions
document.detachEvent("onmousemove", myFunction);
}
خودتان امتحان کنید »
آموزش های مرتبط
آموزش جاوا اسکریبت: HTML DOM EventListener
مرجع جاوا اسکریبت: element.removeEventListener()
کلیه توابع و خصوصیت های شیء Document در JavaScript
- نوشته شده توسط احسان عباسی
- بازدید: 4773