1

所以我有一个 3x3 板,有 9 个图像,全部初始化为一个名为空白的图像。我有一个 x & o 图像,我试图将其放置在除了“空白”之外已经被任何东西占据的位置。这是我为 o 图像提供的代码,分配了一个随机数,我添加了一些条件,但它不起作用,它仍然用图像 o 替换图像 x 和图像 o。我的条件是否有问题,或者我应该是 if/else 还是我错过了什么?我很感激任何帮助,谢谢。

好的,所以我更新了代码,但现在 x 图像根本没有出现。表单名称是 pokemon,我需要添加 .image 才能使其工作吗?

 var x = "pikachu.jpg";
 var o = "Meowth.jpg";
 var blank = "ball.jpg";             

 function b1Move(imageName){
 temp2=imageName;
 if(document.pokemon[temp2].src==blank)  
 document.pokemon[temp2].src=x;
 cMove();
 }

图像的 html 如下所示:

 <a href="javascript:b1Move('b1')"><img src="ball.jpg" height=150 width=150 name=b1         
 id =b1  > </a>
4

1 回答 1

0

您在条件句中使用=而不是==。你可以像这样修复它:

if(document.pokemon.b8.src==blank)

document.pokemon.b8.src==blank是一个赋值并且总是返回true(假设你分配的是一个实际的路径而不是空字符串),然而document.pokemon.b8.src==blank是一个相等比较并且只有当左右参数相等时才会返回true。

另一方面,您不应该需要 9 个不同的b#Move功能。您应该能够参数化正方形:

function bNMove(bn){
  if(document.pokemon[bn].src==blank)
    document.pokemon[bn].src=x;
  cMove();
}

你会这样称呼它:bNMove('b9')

于 2013-07-28T23:05:52.837 回答