我要直奔主题了。基本上,我有以下 HTML 结构:
<div id="global-container">
<div class="content-pusher">
<a class="mobile-menu-btn" href="#">Mobile menu btn</a>
</div>
</div>
并遵循 JavaScript/jQuery:
$(function() {
// Side panel.
$('.content-pusher').click(function(e) {
$this = $(this);
if ($this.parents('#global-container').hasClass('side-panel-open'))
{
$this.parents('#global-container').removeClass('side-panel-open');
}
});
$('.mobile-menu-btn').click(function(e) {
e.preventDefault();
$('#global-container').addClass('side-panel-open');
});
});
问题是我想在单击 a 时添加一个类side-panel-open
,并在单击div 时将其删除。#global-container
Mobile menu btn
content-pusher
问题:
当我单击它时,Mobile menu btn
它会将side-panel-open
类添加到#global-container
div 并立即将其删除,因为它Mobile menu btn
是 inside content-pusher
。(我不能把它放在那个 div 之外)。
起初我认为$('.content-pusher').click...
触发器比它应该工作的早,但是当我检查div 上$('.mobule-menu-btn').click...
是否有一个类时它不会返回 TRUE,即使这个类是在该函数之后添加的。side-panel-open
#global-container
JSFiddle:http: //jsfiddle.net/xFdKx/