有下一个玉/帕格代码:
#pm_language.dropdown(aria-haspopup='true', aria-expanded='false')
button#langbutton.btn.btn-primary.dropdown-toggle(type='button', data-toggle='dropdown') Lang [RU]
.dropdown-menu.dropdown-menu-right
a#1.dropdown-item.active(href='#ru') Русский
a#2.dropdown-item(href='#en') English
所以我们的想法是切换锚定活动类
我尝试对#pm_language容器中的所有锚元素进行一些迭代,找到id =='2'但没有运气的那个:
$('#pm_language').each( $('a'),
function(i) {
var elem = $(this);
var id = elem.attr('id');
if ( id == '2' ) {
if ( !elem.hasClass('active') ) {
elem.addClass('active');
}
} else
elem.removeClass('active');
}
);
有人能指出我的鼻子在哪里错了吗?
答案 0 :(得分:1)
如果您知道id - 为什么要尝试找到它? - 从所有<a>
中删除该类,然后定位您想要拥有活动类的类。顺便说一下 - 在下拉菜单类中使用ul更常见 - 然后使用'<li>
'元素来容纳'<a>
'元素。然后活跃的类进入li - 而不是a。
但是下面的代码是从现有的a中删除活动类,然后将其添加到所需的类中。
$('.dropdown-menu a').removeClass('active');
$('#2').addClass('active');