是否删除在函数内部创建的事件侦听器?(JavaScript)
我试图删除在函数内部创建的事件侦听器,但由于某些原因,它无法工作。如果我把它从函数中去掉,它就可以正常工作。示例如下:是否删除在函数内部创建的事件侦听器?(JavaScript),javascript,html,css,event-listener,Javascript,Html,Css,Event Listener,我试图删除在函数内部创建的事件侦听器,但由于某些原因,它无法工作。如果我把它从函数中去掉,它就可以正常工作。示例如下: <body> <div id='myDiv'></div> <button type='submit' onclick='rel()'>RemoveEventListener</button> <script> function Mouse() { myDiv.addEventListener('
<body>
<div id='myDiv'></div>
<button type='submit' onclick='rel()'>RemoveEventListener</button>
<script>
function Mouse() {
myDiv.addEventListener('click', cK);
function cK() {
alert('You've clicked on myDiv!');
}
}
function rel() {
myDiv.removeEventListener('click', cK);
}
Mouse();
</script>
</body>
RemoveEventListener
函数鼠标(){
myDiv.addEventListener('click',cK);
函数cK(){
警报(“您已单击myDiv!”);
}
}
函数rel(){
myDiv.removeEventListener('click',cK');
}
鼠标();
如果ck
是在鼠标中定义的
则在rel
中不可用。将其移出:
function cK() {
alert('You\'ve clicked on myDiv!');
}
function Mouse() {
myDiv.addEventListener('click', cK);
}
function rel() {
myDiv.removeEventListener('click', cK);
}
如果
ck
是在鼠标中定义的,则在rel
中不可用。将其移出:
function cK() {
alert('You\'ve clicked on myDiv!');
}
function Mouse() {
myDiv.addEventListener('click', cK);
}
function rel() {
myDiv.removeEventListener('click', cK);
}
如何获取对myDiv
组件的引用?删除时是否使用相同的引用?我有一个全局变量包含它,但我忘了复制it@VadimB还有id='myDiv'
对应的HTMLElement作为全局变量公开。如何获取对myDiv
组件的引用?删除时是否使用相同的引用?我有一个全局变量包含它,但我忘了复制it@VadimB另外,使用id='myDiv'
相应的HtmleElement将作为全局变量公开。另外,请参阅VadimB对questionCan的评论。在添加事件侦听器之前调用remove函数,原因问题?请参阅VadimB对问题的评论。添加事件侦听器之前调用的remove函数是否会导致问题?