另一个让我陷入困境的新手问题。
我有三个变量
var state1
var state2
var state3
我需要在.click事件中访问其中一个,具体取决于所点击对象的属性。
如何访问正确的变量?基本上我需要通过添加“state”和正确的数字来获取变量名。
如果需要,我会尽快用一些代码更新这篇文章。
var backstate1;
var backstate2;
var backstate3;
var currentFrame;
function hotspotHover(){
var currentElement = this;
var daName =this.name;
$("#hotspot" +daName).hover(
function() {
$("img.changeOutline").prop("src", currentElement.outlinesArray[currentFrame]);
$("#outlines").show();
},
function() {
$("#outlines").hide();
}
).click(function() {
var backstateLevelNumber = currentElement.backStateLevel; //not working
window['backstate'+ backstateLevelNumber]=currentFrame; //trying to set backstate+number to current frame variable
hoverClick(currentElement.defaultFrame);
checkReverse();
checkSeqLoop();
});
};
答案 0 :(得分:2)
使用数组可以解决您的问题:
var states = [null, null, null];
然后访问它们:(假设currentStateId
是当前的州号)
var currentState = state[currentStateId] //Access state
并设置:
states[currentStateId] = "State"; //Set State
答案 1 :(得分:0)
将状态添加为数组:
var states = [ 'state1', 'state2'];
var stateNumber = 0;
var state = states[stateNumber];