【问题标题】:Internet Explorer 11: table.rows not workingInternet Explorer 11:table.rows 不工作
【发布时间】:2017-11-06 19:01:06
【问题描述】:

我有这个 jasmine 测试套装在 Google Chrome/Firefox 上正常工作(并且曾经与 Internet Explorer 一起工作):

http://gem-calendar.com/shared_code/test/js_test/control_utilities_test.html

今天添加新测试后,我意识到以下代码行(Dreamweaver 中的 571 行)不再适用于 Internet Explorer 11:

var table = document.getElementById('LOG_TABLE');

var length = table.rows[0].cells.length;

当我使用console.log() 打印表变量时,我可以看到 IE 能够获取表,但不能找到表中的行。

但是,chrome 一切都很好:

和火狐:

我在这里很困惑,因为table.rows 是 javascript 中的一个非常标准的函数,而且它似乎没有在其他地方报告过类似的问题。

有没有人遇到过类似的问题?

【问题讨论】:

  • 尝试清除缓存
  • 我清除了所有内容,但问题仍然存在。
  • @Sanchit Patiyal 如果您有兴趣了解,似乎 Internet Explorer 11 不喜欢我们为 <table> 设置 CSS 规则,例如 display: block;display: table; 跨度>
  • 哦,这很奇怪

标签: javascript internet-explorer html-table internet-explorer-11 tablerow


【解决方案1】:

哇,伙计们,信不信由你,这是导致问题的 CSS 文件。

table.TABLE_V_SCROLL>tbody, div.TABLE_V_SCROLL>div.tbody {

    display: block;
}

table.TABLE_V_SCROLL>thead, div.TABLE_V_SCROLL>div.thead {

    display: table;
}

似乎 Internet Explorer 11 不理解我们为表格设置显示属性。

现在的问题是我的代码需要这些行才能在 Google Chrome 上运行 -_-...

【讨论】:

    猜你喜欢
    • 2015-11-06
    • 1970-01-01
    • 1970-01-01
    • 2020-03-24
    • 2016-10-20
    • 2019-08-12
    • 2014-08-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多