const btnMenu = document.querySelector('#btnMenu') .addEventListener('click', function() { console.log('open menu'); if (btnMenu.classList.contains('open')) { btnMenu.classList.remove('open') } else { btnMenu.classList.add('open') } });这段代码有什么问题,我试着绕过它,它是为了广告打开菜单的动作,但我现在只做动画。
2 回答
慕码人8056858
TA贡献1803条经验 获得超6个赞
尝试这种方式..
const btnMenu=document.querySelector('#btnMenu');
btnMenu.addEventListener('click', function(){
console.log('open menu');
if(btnMenu.classList.contains('open')){
btnMenu.classList.remove('open')
}
else{
btnMenu.classList.add('open')
}
});
慕侠2389804
TA贡献1719条经验 获得超6个赞
因为btnMenu被设置为addEventListener- 这不是对按钮的引用的结果。该方法返回undefined!
在事件侦听器函数中将this引用元素:
document.querySelector('#btnMenu')
.addEventListener('click', function() {
console.log('open menu');
if (this.classList.contains('open')) {
this.classList.remove('open')
} else {
this.classList.add('open')
}
});
添加回答
举报
0/150
提交
取消