为了账号安全,请及时绑定邮箱和手机立即绑定

类型错误:无法访问属性“classList”,btnMenu 未定义 btnMenu

类型错误:无法访问属性“classList”,btnMenu 未定义 btnMenu

潇湘沐 2023-04-20 09:55:43
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')

}


});


查看完整回答
反对 回复 2023-04-20
?
慕侠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')

    }

  });


查看完整回答
反对 回复 2023-04-20
  • 2 回答
  • 0 关注
  • 89 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信