javascriptまたはJqueryで一般的な表示/非表示のメニューを作成しようとしています。 私が持っている問題は、余分なスペースがあり、if文が期待どおりに動作しないように、素晴らしいフォントやブートストラップが.text()関数を台無しにしているようです。これはクロスブラウザでも動作するようにすることを望んでいます。クリック時のテキストを期待通りに変更しない
$('#list-btn').click(function() {
var el = $('#list-btn')
console.log(el.text())
if (el.text() == el.text("Hide Instructions")) {
el.text("Show Instructions");
} else {
el.text("Hide Instructions");
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css" rel="stylesheet"/>
<link href="https://code.ionicframework.com/ionicons/2.0.1/css/ionicons.min.css" rel="stylesheet"/>
<li>
<a href="#" class="hidden-sm hidden-xs" data-toggle="tab" id="list-btn">
<i class="fa fa-fw fa-list white"></i> Hide Instructions</a>
</li>
試してください: '場合(el.text()== "隠す取扱説明書")' – Fr33d0m
Fr33d0m @コンソールから、それはまだスペースを示していますテキストを印刷すると、アイコンが削除されます。私は最初のif文がスペースのためにテキストと一致しないと思います。 – GISKid