Junior
Olay dinleyicisi nasıl kaldırılır?
sobes.tech yapay zeka
AI'dan gelen yanıt
Bir olay yöneticisini kaldırmak için removeEventListener() yöntemi kullanılır. Bu yöntem, addEventListener() ile aynı üç argümanı kabul eder:
- Olay türü (dize, örneğin
'click','mouseover'). - Atanan olay yöneticisi fonksiyonuna referans.
- Opsiyonel nesne veya bayrak değeri, fazı (yakalama veya yukarı akış) gösterir. Eklenirken kullanılan ile aynı olmalıdır.
Önemli: Başarılı bir şekilde kaldırmak için, aynı fonksiyon referansını geçirmek gerekir, eklerken kullanıldığı gibi. Anonim fonksiyonlar "anlık" oluşturulduğunda bu şekilde kaldırılamaz.
Örnek:
// Öğeyi al
const element = document.getElementById('myButton');
// Olay yöneticisini tanımla
function handleClick() {
console.log('Butona tıklandı!');
}
// Olay yöneticisini ekle
element.addEventListener('click', handleClick);
// ...kod...
// Olay yöneticisini kaldır
element.removeEventListener('click', handleClick);
Eğer olay yöneticisi opsiyonlarla eklendiyse, örneğin useCapture: true, kaldırırken de belirtilmelidir:
element.addEventListener('click', handleClick, { capture: true });
// ...
element.removeEventListener('click', handleClick, { capture: true });
Üçüncü argüman atlanmışsa (varsayılan false), kaldırırken de atlanabilir veya false olarak kullanılabilir:
element.addEventListener('click', handleClick); // useCapture: false varsayılan
// ...
element.removeEventListener('click', handleClick);
element.removeEventListener('click', handleClick, false); // eşdeğerdir