簡體   English   中英

刪除 Function 內部的事件偵聽器

[英]Removing Event Listeners Inside of a Function

我有兩個投票按鈕(是/否),每個按鈕都有一個事件監聽器。 如果他們單擊否,我想刪除是。 但是 voteNo function 中的 removeEventListener 似乎沒有刪除 voteYes 監聽器。

知道我做錯了什么嗎? 提前致謝!

document.getElementById("voteButtonYesID").style.display = "inline";
document.getElementById("voteButtonNoID").style.display = "inline";
        // listen for the no click
document.getElementById('voteButtonNoID').addEventListener('click', (e) => voteNo(e, direction),{once: true});

        // listen for the yes click
document.getElementById('voteButtonYesID').addEventListener('click', (e) => voteYes(e, direction),{once: true});


    function voteNo(e, direction) {
        e.preventDefault();
        // clear the voting buttons
        document.getElementById("voteMessageID").style.display = "none";
        document.getElementById("voteButtonYesID").style.display = "none";
        document.getElementById("voteButtonNoID").style.display = "none";

        document.getElementById('voteButtonNoID').removeEventListener('click', voteNo);
        document.getElementById('voteButtonYesID').removeEventListener('click', voteYes);

您從未將voteNo分配為事件偵聽器,您分配了匿名 function (e) => voteNo(e, direction)

您必須先聲明此 function

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM