【问题标题】:innerHTML and FireFox compatibility?innerHTML 和 FireFox 的兼容性?
【发布时间】:2012-11-08 04:46:19
【问题描述】:

我有一个 javascript 函数。我使用该函数在运行时在 html 文件中的表格行中添加列表框。该脚本在 IE、chrome 22 和 FFox 16 中运行良好。但在同一台机器上使用 firefox3 时,列表框不可见,在 IE 上一切正常。

如果需要任何更改,请建议我,以便此代码也可以在 firefox 3 上正常运行

这是 JavaScript 代码:

function addListBoxes(rowPos)
{

allTables[0].deleteRow(rowPos); //first, delete the row
var row = allTables[0].insertRow(rowPos);  //reinsert the row
var cell1=row.insertCell(0);
var cell2=row.insertCell(1);
var cell3=row.insertCell(2);
var cell4=row.insertCell(3);
var cell5=row.insertCell(4);

    cell1.innerHTML="";
    cell2.innerHTML="<select id='relList' name='select' size='5' multiple></select>";
    cell3.innerHTML="";
    cell4.innerHTML="<select id='relSubList' name='select' size='5' multiple></select>";
    cell5.innerHTML="";   
 }

更新

在其他一些线程上,我发现推荐使用 document.getElementById,因此我更新了脚本,但它也不起作用。

function addListBoxes(rowPos)
{

    allTables[0].deleteRow(rowPos);
    var row = allTables[0].insertRow(rowPos);
    row.offsetHeight;
    var cell1=row.insertCell(0);
    cell1.setAttribute("id", "listRowCell0", 0);
    var cell2=row.insertCell(1);
    cell2.setAttribute("id", "listRowCell1", 0);
    var cell3=row.insertCell(2);
    cell3.setAttribute("id", "listRowCell2", 0);
    var cell4=row.insertCell(3);
    cell4.setAttribute("id", "listRowCell3", 0);
    var cell5=row.insertCell(4);
    cell5.setAttribute("id", "listRowCell4", 0);

        document.getElementById("listRowCell0").innerHTML="";
        document.getElementById("listRowCell1").innerHTML="<select id='relList' name='select' size='5' multiple></select>";
        document.getElementById("listRowCell2").innerHTML="";
        document.getElementById("listRowCell3").innerHTML="<select id='relSubList' name='select' size='5' multiple></select>";  
}

【问题讨论】:

  • 你引用的是什么文档类型?
  • 你有没有在后来的firefox版本中尝试过。我可以尝试一下,但我还必须采取一些粗略的 allTable 和 rowpos 等,然后我的情况可能与你的不同。
  • 简单的 HTML 和 Javascript。没有其他脚本语言。
  • @Sami - 该脚本在 FFox 15 和 16 中运行良好,我没有发现任何问题。我的朋友向我报告了这个问题,他在 Windows XP 上使用 FFox 3,确切地说是 Firefox 3.6.28。

标签: javascript firefox cross-browser innerhtml


【解决方案1】:

尝试在页面顶部使用以下内容,那么它是否可以在 Firefox 3 中使用?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

【讨论】:

  • 感谢 KinKongFrog。我会试试看,会回复你的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-02
  • 1970-01-01
  • 2020-01-28
  • 1970-01-01
相关资源
最近更新 更多