我希望你能够在用户点击按钮时将.fa-eye替换为fa-eye-slash。我做错了什么?它无法正常工作。
HTML代码:
<button onclick="arata_ascunde(this);" style="align:right;font-size:13px"
class="btn btn-info " id="show_hide_bt" style="background-color:#00b0ff;"><i
class="fa fa-eye"></i> Show</button>
Javascript代码:
function arata_ascunde(button) {
var x = document.getElementById('showhide');
var change = document.getElementById("show_hide_bt");
if (x.style.display === 'none') {
x.style.display = 'block';
} else {
x.style.display = 'none';
}
if (change.innerHTML == ' Show')
{
change.innerHTML = ' Hide';
$(button).find('i').toggleClass('fa-eye').toggleClass('fa-eye-slash');
}
else {
change.innerHTML = ' Show';
$(button).find('i').toggleClass('fa-eye-slash').toggleClass('fa-eye');
}
}
change
的innerHTML
包含了<i>
标签的标记。它不会匹配你正在检查的字符串。你应该检查嵌套的<i>
标签是否有fa-eye
类,而不是根据 innerHTML 进行评估。另外,以后如果if
语句没有按照你的预期工作,请尝试使用 console.log 输出值并查看发生了什么。 - Taplar