Junior
როგორ წაშალოთ მოვლენის მოსმენა?
sobes.tech AI
პასუხი AI-სგან
ღონისძიების დამთვალიერებლის ამოღებისთვის გამოიყენება მეთოდი removeEventListener(). ეს მეთოდი იღებს იგივე სამ არგუმენტს, რაც addEventListener():
- მოვლენის ტიპი (სტრინგი, მაგალითად
'click','mouseover'). - მინიჭებული დამუშავების ფუნქციის რეფერენცია.
- აირჩიეთ ობიექტი ან ბულიანი მნიშვნელობა, რომელიც მიუთითებს ფაზას (შეყვანა ან ბუშლეტი). უნდა ემთხვეოდეს დამატების დროს გამოყენებულს.
მნიშვნელოვანია: წარმატებით ამოსაშლელად, უნდა გადაეცეს შესაბამისი ფუნქციის რეფერენცია, რომელიც გამოყენებული იყო დამატების დროს. ანონიმური ფუნქციები, რომლებიც "მგზავრობაში" იქმნება, ამ გზით ვერ მოიხსნება.
მაგალითი:
// ელემენტის მიღება
const element = document.getElementById('myButton');
// დამუშავების ფუნქციის განსაზღვრა
function handleClick() {
console.log('ღილაკი დაჭერილია!');
}
// დამუშავების დამატება
element.addEventListener('click', handleClick);
// ...კოდი...
// დამუშავების ამოღება
element.removeEventListener('click', handleClick);
თუ დამუშავება დამატებულია ოპციებით, მაგალითად useCapture: true, მაშინ მათაც უნდა მიუთითოთ ამოღებისას:
element.addEventListener('click', handleClick, { capture: true });
// ...
element.removeEventListener('click', handleClick, { capture: true });
თუ მესამე არგუმენტი დამატებისას გამოტოვებულია (სტანდარტული მნიშვნელობა false), მასაც შეიძლება გამოტოვება ან დაყენება false-ზე:
element.addEventListener('click', handleClick); // useCapture: false სტანდარტული
// ...
element.removeEventListener('click', handleClick);
element.removeEventListener('click', handleClick, false); // ტოლია