我使用Javascript在指定维度的图像上生成网格。 如果用户选择10 x 10,我已经让用户从下拉列表中选择网格大小,然后我在图像上生成10 x 10网格。 我的问题是我的代码在谷歌浏览器上工作正常,但没有在Mozilla和IE上工作,问题是Mozilla和IE没有在图像上显示网格。 我附上了Chrome和Mozilla的屏幕截图。
以下是我的html页面:
<html>
<div style="position: absolute; left: 20px; " id="more_clicky1">
<IMG src="images/ignore_area.jpg" id="ia"> </IMG>
</div>
<div style="position:absolute; left: 20px; " id="more_clicky">
<table name="GridTable" style="" id="GridTable" border = "2" cellspacing="0" cellpadding="0">
</table>
</div>
</html>
我在Javascript中生成图像网格的代码如下:
function Create_Table(trow,tcol,noc)
{
var wid=document.getElementById("ia").width;
var hei=document.getElementById("ia").height;
var cwidth=wid/tcol;
var cheight=hei/trow;
var mytable = document.getElementById('GridTable');
rr=mytable.rows.length;
while(rr--)
{
mytable.deleteRow(rr);
//alert(rr);
}
var temp;
var cell;
for (var r = 0; r <trow; r++)
{
temp=noc;
var row = mytable.insertRow(r);
for (var c = 0; c <tcol; c++)
{
cell=row.insertCell(c);
cell.id='td'+temp;
cell.style.width =cwidth;
cell.style.height =cheight;
//alert(cell.id);
//cell.innerHTML=' ';
cell.className="dynamic";
with ({ n: cell.id })
{
cell.onclick = function()
{
bcolor1('red',n);
};
cell.onmousemove=function()
{
bcolor('red',n);
}
}
temp++;
}
noc=noc-tcol;
}
}