私はaria-expanded
がtrue
かfalse
であるかどうかに応じて<span>
タグのクラスを変更しようとしているが、それは働いていないので、代わりに「未定義」を返すように見えます。はJavaScriptでARIA-拡大値を取得しようとしているが、「未定義」になっ
これは私のjavascriptです:
$(function() {
if ($('#tester').attr('aria-expanded') === 'true') {
$("#testerTwo").toggleClass("glyphicon-eye-close glyphicon-eye-open");
}
});
そして、私のHTMLは(ブートストラップを使用して)次のようになります。
<div class="col-sm-6">
<a id="tester" data-toggle="collapse" href="#collapsible" aria-expanded="false">
<h3><span class="glyphicon glyphicon-star"></span> Extra <span id="testerTwo" class="glyphicon glyphicon-eye-close"></span></h3>
</a>
<div class="collapse" id="collapsible">
<div class="card card-block">
<ul>
<li><a href="#">item 1</a></li>
<li><a href="#">item 2</a></li>
<li><a href="#">item 3</a></li>
<li><a href="#">item 4</a></li>
</ul>
</div>
</div>
</div>
あなたのコードが動作しています。あなたの問題は何ですか? –
@Dineshそれは私のために働いていない。 attr( 'aria-expanded')); 'それは"未定義 "と言いますが、私はこれが動作しない理由だと思います。どういうわけか、状態が「真」か「偽」かを読み取ることはできません –
これを確認してくださいhttps://jsfiddle.net/nfmwaeyt/その作業 –