javascript - 在 IE 中显示表格

标签 javascript dom internet-explorer

我有这样的代码:

var xPola = 10, //how many cols
    yPola = 10, //how many cols
    bokPola = 30, //size of cell
    body = document.getElementsByTagName('body')[0];


var tablica = document.createElement('table');
body.appendChild(tablica);

for( var y = 0; y < yPola; y++ ) {
    var rzad = document.createElement('tr');
    tablica.appendChild(rzad);
    for( var x = 0; x < xPola; x++ ) {
        var pole = document.createElement('td');
        pole.setAttribute('width', bokPola);
        pole.setAttribute('height', bokPola);
        rzad.appendChild(pole);
    }
};

它在 FF、Chrome 和 Opera 中运行良好(它显示 10x10 的表格,30 像素的宽度和高度行)。在 IE 中没有任何反应。我检查了 firebug lite,它在 HTML 部分,在 BODY 标签内,但我什么也没看到。怎么了?

最佳答案

它需要一些调整:

var xPola = 10, //how many cols
    yPola = 10, //how many cols
    bokPola = 30, //size of cell
    body = document.getElementsByTagName('body')[0];


var tablica = document.createElement('table');
body.appendChild(tablica);
var tbody = document.createElement('tbody');
tablica.appendChild(tbody);

for( var y = 0; y < yPola; y++ ) {
    var rzad = document.createElement('tr');
    tbody.appendChild(rzad);
    for( var x = 0; x < xPola; x++ ) {
        var pole = document.createElement('td');
        pole.innerHTML='&nbsp;';
        pole.style.width = pole.style.height = bokPola;
        rzad.appendChild(pole);
    }
}

IE 需要一个 <tbody>在大多数情况下,不会显示空单元格,因此需要在其中留出空间。

关于javascript - 在 IE 中显示表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2442061/

相关文章:

javascript - 在android webview中删除网页的某些部分然后显示它

javascript - 为什么 jQuery 选择器函数与原生 DOM 方法相比这么慢

html - IE8.0中窗体背景样式不随窗体扩展

html - 使用@font-face 时 firefox 和 IE 中的负上边距

javascript - 如何让内容脚本在页面更新和网址更改时运行?

javascript - 为什么单态和多态在 JavaScript 中很重要?

JavaScript 对象文字长度 === 未定义?

javascript - IE Explorer 9 直到 ajax/json 函数完成后才呈现

javascript - 如何创建元素的浅拷贝?

css - Internet Explorer 8+ 中的自定义 Google 字体