Function 变球函数

Function 变球函数,function,Function,我不能让我的球换成另一个角色,除了,我做错了什么?这是完整的代码,我有一个html文件附加到这只是调用球改变按钮。我只能调用按钮,无法将“”改为其他字符。 window.onload = initAll; var moves = new Array('Up','Down','Right','Left'); function initAll() { for (var i=0; i<moves.length; i++) { var eid="id_"+moves[i]; co

我不能让我的球换成另一个角色,除了,我做错了什么?这是完整的代码,我有一个html文件附加到这只是调用球改变按钮。我只能调用按钮,无法将“”改为其他字符。

window.onload = initAll;
var moves = new Array('Up','Down','Right','Left');

function initAll() {
for (var i=0; i<moves.length; i++) {
    var eid="id_"+moves[i];
    console.log('eid='+eid);
    document.getElementById(eid).onclick =
    function() {moveBall(this);}
}


 function moveBall(e) {
    console.warn('moveBall['+e.id+']');
var ball = document.getElementById("id_ball");
var tl=GetTopLeft(ball);
console.log('tl["Top"]='+tl["Top"]+' tl["Left"]='+tl["Left"]);
switch (e.id) {
case "id_Up":
    ball.style.top = tl['Top'] - 15 + 'px';
break;
case "id_Down":
    ball.style.top = tl['Top'] + 15 + 'px';
break;
case "id_Right":
    ball.style.left = tl['Left'] + 15 + 'px';
break;
case "id_Left":
    ball.style.left = tl['Left'] - 15 + 'px';
break;
 }
}


function GetTopLeft(e) {
var x, y = 0;
//set x to e’s offsetLeft
x = e.offsetLeft;
//set y to e’s offsetTop
y = e.offsetTop;
//set e to its offsetParent
e = e.offsetParent;
//use while loop to check if e is null
//if not then add current e’s offsetLeft to x
//offsetTop to y and set e to its offsetParent
while(e != null) {
    x = parseInt(x) + parseInt(e.offsetLeft);
    y = parseInt(y) + parseInt(e.offsetTop);
    console.log(x);
    e = e.offsetParent;
}
//Return Top and Left
return {Left:x, Top:y};
}

 function changeBallChar() {
   var ball = prompt("Please enter character for ball", "*");
   {document.getElementById(id_ball).innerHTML = ball;}
}
window.onload=initAll;
var moves=新数组('Up'、'Down'、'Right'、'Left');
函数initAll(){

对于(var i=0;i您的Javascript缺少最后一个括号

请尝试以下代码:

function changeBallChar() {
    var ball = prompt("Please enter character for ball", "*");
    if(ball != null) {
        // id_ball is not defined inside this the code you posted
    }
}

在这里查看有关JS弹出窗口的更多文档:

是否要声明var id\u ball=prompt(…)?我在上面添加了完整代码,我在html文件中调用id\u ball。如果有人将*以外的内容放入,则按钮不会更改对象。