在控制台中,它给我错误'位置未定义'使用下面的代码..任何想法?
var x = 1;
var y = 1;
function getyx(y, x) {
var yx = 'Y' + y + 'X' + x ;
return yx;
}
function getPosition() {
var position = document.getElementById(getyx(y,x));
return position;
}
function moveSprite() {
position.appendChild(img); //error occurs here
}

也许通过Id接受一个函数获取元素? 我知道这可能是一个愚蠢的问题,但原谅我:)
答案 0 :(得分:1)
看起来getPosition
是选择所需元素的函数,因此请尝试调用该函数:
function moveSprite() {
const position = getPosition();
position.appendChild(img);
}
将函数创建的字符串传递给getElementById
答案 1 :(得分:0)
它说位置可能是一些问题的原因,最简单的是你没有“Y1X1”作为HTML ID。
看到你的函数返回一个字符串,它就可以使用getElementById()。如果您不确定范围,可以转到代码的顶部并使用var position;
,但这很可能不是范围问题。