LNoe
2015-06-07 09:40:47
var?sideRight?=?document.getElementById('sideright');
var?side?=?document.getElementsByClassName('side-icon');
var?flag?=?true;
for?(var?i?=?0;?i?<?side.length;?i++)?{
(function()?{
if?(flag)?{
side[i].addEventListener('click',?function()?{
changeManyElem(sideRight,?{
'right':?0
},?30);
},?false);
flag?=?false;
}?else?{
side[i].addEventListener('click',?function()?{
changeManyElem(sideRight,?{
'right':?-350
},?30);
flag?=?true;
},?false);
}
})();
}這里我side的每一項綁定了兩個點擊事件效果就是點擊每一項右邊欄會劃出,再點擊一下會滑回去??墒谴a敲完之后發(fā)現(xiàn)點擊第一項的時候會劃出,再點擊第一項的時候沒反應(yīng),這時候點擊第二項時會滑回去。求高手指點迷津?。?
2 回答
已采納

Vecchio阿加西
TA貢獻(xiàn)4條經(jīng)驗 獲得超1個贊
想實現(xiàn)你所說的方法,你可以這樣:
for?(var?i?=?0;?i?<?side.length;?i++)?{
????side[i].addEventListener('click',?function()?{
? ? ? ? ? ?if(flag){ ?
? ? ? ? ? ? ? changeManyElem(sideRight, {'right': 0}, 30); ?
? ? ? ? ? ?}
? ? ? ? ? ?else{ ?
? ? ? ? ? ? ? changeManyElem(sideRight, {'right': -350}, 30);
? ? ? ? ? ?}
???? },?false);
}

Vecchio阿加西
TA貢獻(xiàn)4條經(jīng)驗 獲得超1個贊
你寫的那個判斷語句,if~else,在一次循環(huán)里,if~else只可能執(zhí)行其中一項,意味著第一次循環(huán)if就給第一個side添加劃出事件,第二次循環(huán)else就給第二個side添加一個劃回事件。
添加回答
舉報
0/150
提交
取消