有沒有辦法簡化我的這部分代碼?我一直在研究這個問題,最後得到了這個作品,或者做了我需要做的事情。我有一個數組(6 * 6),當你點擊圖像時,它將圍繞它的所有其他圖像變成相同的顏色。我只使用紅色和藍色,對不起,我沒有使用分號,但我稍後會修復它。那麼有人能幫我嗎?如果你需要整個程序,我也可以上傳。簡化代碼塊
function vClick(iRow, iCol)
{
var i, j;
if (astrColor[iRow][iCol] == 'r')
{
if ((iRow - 1) < 0)
{
for (i = iRow; i <= (iRow + 1) ; i++)
{
if ((iCol - 1) < 0)
{
for (j = iCol; j <= (iCol + 1) ; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'rcircle.png';
astrColor[i][j] = 'r';
}
}
else if ((iCol + 1) > 5)
{
for (j = (iCol - 1) ; j <= iCol; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'rcircle.png';
astrColor[i][j] = 'r';
}
}
else
{
for (j = (iCol - 1) ; j <= (iCol + 1) ; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'rcircle.png';
astrColor[i][j] = 'r';
}
}
}
}
else if ((iRow + 1) > 5)
{
for (i = (iRow - 1) ; i <= iRow; i++)
{
if ((iCol - 1) < 0)
{
for (j = iCol; j <= (iCol + 1) ; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'rcircle.png';
astrColor[i][j] = 'r';
}
}
else if ((iCol + 1) > 5)
{
for (j = (iCol - 1) ; j <= iCol; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'rcircle.png';
astrColor[i][j] = 'r';
}
}
else
{
for (j = (iCol - 1) ; j <= (iCol + 1) ; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'rcircle.png';
astrColor[i][j] = 'r';
}
}
}
}
else if((iCol - 1) < 0)
{
for (i = (iRow - 1) ; i <= (iRow + 1) ; i++)
{
for (j = iCol ; j <= (iCol + 1) ; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'rcircle.png';
astrColor[i][j] = 'r';
}
}
}
else if((iCol + 1) > 5)
{
for (i = (iRow - 1) ; i <= (iRow + 1) ; i++)
{
for (j = (iCol - 1) ; j <= iCol ; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'rcircle.png';
astrColor[i][j] = 'r';
}
}
}
else
{
for (i = (iRow - 1) ; i <= (iRow + 1) ; i++)
{
for (j = (iCol - 1) ; j <= (iCol + 1) ; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'rcircle.png';
astrColor[i][j] = 'r';
}
}
}
}
else
{
if ((iRow - 1) < 0)
{
for (i = iRow; i <= (iRow + 1) ; i++)
{
if ((iCol - 1) < 0)
{
for (j = iCol; j <= (iCol + 1) ; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'bcircle.png';
astrColor[i][j] = 'b';
}
}
else if ((iCol + 1) > 5)
{
for (j = (iCol - 1) ; j <= iCol; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'bcircle.png';
astrColor[i][j] = 'b';
}
}
else
{
for (j = (iCol - 1) ; j <= (iCol + 1) ; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'bcircle.png';
astrColor[i][j] = 'b';
}
}
}
}
else if ((iRow + 1) > 5)
{
for (i = (iRow - 1) ; i <= iRow; i++)
{
if ((iCol - 1) < 0)
{
for (j = iCol; j <= (iCol + 1) ; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'bcircle.png';
astrColor[i][j] = 'b';
}
}
else if ((iCol + 1) > 5)
{
for (j = (iCol - 1) ; j <= iCol; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'bcircle.png';
astrColor[i][j] = 'b';
}
}
else
{
for (j = (iCol - 1) ; j <= (iCol + 1) ; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'bcircle.png';
astrColor[i][j] = 'b';
}
}
}
}
else if ((iCol - 1) < 0)
{
for (i = (iRow - 1) ; i <= (iRow + 1) ; i++)
{
for (j = iCol ; j <= (iCol + 1) ; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'bcircle.png';
astrColor[i][j] = 'b';
}
}
}
else if ((iCol + 1) > 5)
{
for (i = (iRow - 1) ; i <= (iRow + 1) ; i++)
{
for (j = (iCol - 1) ; j <= iCol ; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'bcircle.png';
astrColor[i][j] = 'b';
}
}
}
else
{
for (i = (iRow - 1) ; i <= (iRow + 1) ; i++)
{
for (j = (iCol - 1) ; j <= (iCol + 1) ; j++)
{
var strID = "img" + i + "," + j;
document.getElementById(strID).src = 'bcircle.png';
astrColor[i][j] = 'b';
}
}
}
}
}
你先生是個天才!謝謝,它的工作方式! – dmbfan42 2014-11-06 23:21:50
我很高興它爲你工作! – carlosherrera 2014-11-08 01:35:58