Resume.NavView = Em.View.extend({ tagName: 'ul', classNames: ['nav','nav-tabs'], currentPathDidChange: function(){ Ember.run.next( this, function() { $("ul li:has(>a.active)").addClass('active'); $("ul li:not(:has(>a.active))").removeClass('active'); }); }.observes('controller.currentPath') }); Resume.ExpTypesView = Resume.NavView.extend({ classNames:['nav','nav-pills'] }); App.NavView = Em.View.extend({ tagName: 'ul', classNames: ['nav'], classNameBindings: ['type'], type: 'nav-tabs', currentPathDidChange: function(){ Ember.run.next( this, function() { $("ul li:has(>a.active)").addClass('active'); $("ul li:not(:has(>a.active))").removeClass('active'); }); }.observes('controller.currentPath') }); App.ExpTypesView = App.NavView.extend({ type: 'nav-pills', }); Resume.ExpTypesView = Resume.NavView.extend({ //classNames:['nav','nav-pills'], init: function(){ this.set('classNames', ['nav','nav-pills']); } });