試圖添加和刪除類點擊動態按鈕,意味着這個按鈕<button class="one"></button>
獲得類動態像這樣:<button class="one text1">text1</button>
所以,如果按鈕一個有.text1
類和點擊這種添加類.hide
列出項目<li class="text1">
像<li class="text1 show">
同爲兩個按鈕<button class="two"></button>
並通過單擊添加類<li class="text2 show">
添加和刪除類點擊一個動態按鈕
注意:當點擊按鈕二時,則應刪除類.show
並添加新類.hide
至按鈕一。
主要HTML:
<div id="main-id">
<button class="one"></button>
<button class="two"></button>
<ul>
<li>
<!--List 1-->
<div class="label">
<a href="#">text1</a>
</div>
</li>
<li>
<!--List 2 is Same-->
<div class="label">
<a href="#">text1</a>
</div>
</li>
<li>
<!--List 3 is different-->
<div class="label">
<a href="#">text2</a>
</div>
</li>
</ul>
</div>
腳本:
$('.label a').each(function() {
var $this=$(this);
$this.closest('li').addClass($this.text());
});
// Combine This
$('button').each(function(){
var liInd = 0;
var cl = '';
var txt = '';
var clses = [];
var ind = $('button').index($(this)) + 1;
$('li').each(function(){
if(clses.indexOf($(this).attr('class')) === -1){
clses.push($(this).attr('class'));
liInd = liInd + 1;
}
if(ind === liInd){
cl = $(this).attr('class');
txt = $(this).find('a').text();
return false; //break
}
});
$('button:nth-child(' + ind + ')').addClass(cl);
$('button:nth-child(' + ind + ')').text(txt);
});
我已經嘗試過這種通過添加/通過點擊功能刪除類,但問題是按鈕從List項目動態獲取類,所以我不能夠定位按鈕。
任何其他方式的建議JS/Jquery?
你我的問題不夠清楚。 – RRK
我的意思是想通過點擊功能添加/刪除類來列出項目。 – Aariba
檢查這個** [DEMO](https://jsfiddle.net/yaLm4euk/1/)** –