我有一个移动导航,想要替换bootstrap折叠按钮的文本。如果单击“菜单”,请更改为“X”。如果单击“X”,请更改为“菜单”。 jsfiddle
$(document).ready(function() {
$('.navbar-toggle').on('click', function () {
if (matchMedia('(max-width: 767px)').matches) {
var menu_text = $('.navbar-toggle').text();
if(menu_text == 'X' ){
$('.navbar-toggle').text("Menu");
}
elseif (menu_text == 'Menu'){
$('.navbar-toggle').text("X");
}
}
});
});
答案 0 :(得分:0)
之所以没有按照您想要的方式工作,是因为它将所有文本都放在该按钮内。这意味着需要“切换导航菜单”。你必须摆脱它,并且修剪ext,以便比较可以像预期的那样工作。要考虑的其他因素是大写字母与小写字母不同。 “菜单”和“菜单”与计算机不同。
这是固定代码:
$(document).ready(function() {
$('.navbar-toggle').on('click', function () {
if (matchMedia('(max-width: 767px)').matches) {
// alert('ENTERED');
var temptxt = $('.navbar-toggle span').text().trim();
$('.navbar-toggle span').text('');
var menu_text = $('.navbar-toggle').text().trim();
//alert(menu_text);
if(menu_text == 'X' ){
$('.navbar-toggle').text("MENU");
}
else if (menu_text == 'MENU'){
$('.navbar-toggle').text("X");
}
}
$('.navbar-toggle span').text(temptxt);
});
});
哦!而且我忘了提到,控制台因为 elseif 而给我一个错误所以我只是分成了其他如果这就像魅力一样。