jquery addclass不在骨干事件上工作

时间:2014-03-20 15:50:35

标签: javascript jquery backbone.js

jquery的addClass没有添加'active'但是被调用(见下文,两个c​​onsole.logs都会关闭)

events: {
    'click .nav-sidebar li': 'menuChange'
},

menuChange: function (ev) {
    $(ev.currentTarget).addClass(function() {
        console.log('Class added....supposedly');
        return 'active';
    });
    console.log('Selector!');
}

我只是添加了像.addClass('active')这样的类,但是没有用,所以我使用带控制台日志的函数来确保它到达,即使我不知道为什么它不会。

另外,这不是我的CSS,因为我在那里放了debugger并在firebug中检查了ev.currentTarget并手动添加了类,它工作正常。单击时不会添加类。

<ul class="nav nav-sidebar">
            <li><a href="#/account/settings">Settings</a></li>
</ul>

<li>应该添加活动类。

1 个答案:

答案 0 :(得分:0)

我的问题是链接触发路由更改,该路由更改旨在呈现子视图,但该路由重新呈现整个页面,删除我对DOM所做的任何更改并重置为默认模板,有效地撤消我的更改(添加“活跃”类。