我有一个触发画布边栏的按钮。当非画布边栏处于活动状态时,菜单按钮不可单击。 因此,我试图查找类名" js-off-canvas-exit"并且"是可见的"那么菜单按钮应该得到类名" is-active"否则应从菜单按钮中删除此类名称。
我的尝试看起来像这样:
var menuButton = document.getElementById('menuButton');
menuButton.addEventListener('click', function(e) {
menuButton.classList.toggle('is-active');
e.preventDefault();
});
$('.js-off-canvas-exit .is-visible').click(function() {
menuButton.removeClass('is-active');// add classname is-active to menuButton
}
$('.js-off-canvas-exit:not(.is-visible)').click(function() {
menuButton.addClass('is-active');// remove classname is-active from menuButton
}
有人可以帮我解决这个问题吗?
答案 0 :(得分:0)
由于menuButton
是本机DOM元素,因此需要创建jQuery对象。因为removeClass()
和addClass()
方法可用于jQuery对象而不是DOM元素。
$(menuButton).removeClass('is-active');
而不是
menuButton.removeClass('is-active');
您可以使用Element.classList对象的add()
和remove()
。