私は、liタグのクラスに応じて、ボタンを非表示および表示する次のJqueryスクリプトを持っています
$('li#test').each(function() {
if($(this).hasClass('active'))
{
//Active class is applied
$(this).children().children().closest("img").attr("src", "assets/img/button_home_selected3.png");
$(this).children().children().closest("button").css("display","table");
}
else
{
$(this).children().children().closest("img").attr("src", "assets/img/button_home_plain1.png");
$(this).children().children().closest("button").css("display","none");
}
});
デフォルトでは、ボタン タグには display:none があります。
htmlは次のとおりです。
<ul id="nav-tabs" data-tabs="tabs">
<li id="test" style="list-style: none;" class="active">
<a href="#home" data-toggle="tabs" ><img src="assets/img/button_home_selected3.png" id="test2" width="83"/><span>Home</span></a>
</li>
</ul>
li タグは、スクリプトを使用して動的に追加されます
$('.plus').click(function(e) {
e.preventDefault();
var li_count = $('#nav-tabs').length;
if (li_count <= 3){
if(counter <= 3){
$('#nav-tabs').append('<li id="test" ><a href="#tab' + counter + '" data-toggle="tabs" ><img src="assets/img/button_home_plain1.png" width="83" id="test2">Tab' + counter + '</span><button type="button" class="close">×</button></a></li>');
} else { alert("Only 3 Tabs Allowed!")};
}
また、スクリプトを使用してタブを切り替えるアクティブなタグが 1 つあります。
$('li#test').each(function() {
if($(this).hasClass('active'))
{//Active class is applied
$(this).children().children().attr("src", "assets/img/button_home_selected3.png");
}
else
{
$(this).children().children().attr("src", "assets/img/button_home_plain.png");
}
});
これは IE と Firefox では正常に機能しますが、Google Chrome では機能しません...