在我正在工作的化身生成器中,我有幾個按鈕事件可以做同樣的事情,但使用不同的身體部位。我不希望有不同的功能做同樣的事情,所以我想對所有身體部位使用一個功能。對同一功能使用不同的對象屬性
下面的第14行使用對象propery'AvGen.eyes.currEyesNr',但是我想用一個點擊按鈕。我可以將什麼作爲參數放入,以及如何使用函數中的參數來使用正確的對象參數?從currBodyNr
屬性指示當前索引值的
1. prevBodyBtn.on('click', function(){
2. if (AvGen.theBody.currBodyNr > 0) {
3. changePart(-1);
4. }
5. });
6.
7. prevEyesBtn.on('click', function(){
8. if (AvGen.eyes.currEyesNr > 0) {
9. changePart(-1);
10. }
11. });
12.
13. function changePart(direction) {
14. AvGen.eyes.currEyesNr += direction; // <-- this is now always 'AvGen.eyes.currEyesNr' but should be dynamic
15.
16. var body = AvGen.theBody.bodies[AvGen.theBody.currBodyNr],
17. eyes = AvGen.eyes.eyes[AvGen.eyes.currEyesNr],
18. nose = AvGen.nose.noses[AvGen.nose.currNoseNr];
19. mouth = AvGen.mouth.mouths[AvGen.mouth.currMouthNr];
20.
21. AvGen.addSVG(body, eyes, nose, mouth);
22. }
很好的答案,謝謝! – holyredbeard