abu008
abu008
2011-10-22 14:20

请教JS兼容性问题

  • javascript

这文件在IE下可以运行,在FF下不能,JS不兼容,那位有空的请帮我改下,谢谢
[code="java"]


JS内嵌表格 var gseq=1; var gLastDetailImgObj=null; //显示详细信息 function showDetailNumTable(){ var innerTR = "<table border=\"1\" align='center' width='100%'><tr style=\"background:gray;\"><td>inner11</td><td>inner12</td><td>inner13</td><td>inner14</td><td>inner15</td></tr><tr><td>inner21</td><td>inner22</td><td>inner23</td><td>inner24</td><td>inner25</td></tr><tr><td>inner31</td><td>inner32</td><td>inner33</td><td>inner34</td><td>inner35</td></tr><tr><td>inner41</td><td>inner42</td><td>inner43</td><td>inner44</td><td>inner45</td></tr></table>"; var imgObj=event.srcElement; var tr=getOuterObj(imgObj,'TR'); // 得到tr对象 var newDivId=null; if(!tr.newDivId){ var newTr=document.createElement("<TR></TR>"); // 创建tr var newTd=document.createElement("<TD COLSPAN='"+tr.children.length+"' bgcolor='#F2F09F'></TD>"); // 创建td newDivId='detaildiv'+(gseq++); // 每一行内嵌的divID,每一行的ID都不同 var newDiv=document.createElement("<div id='"+newDivId+"'></div>"); // 创建div newTr.appendChild(newTd); // tr中添加td newTd.appendChild(document.createTextNode("各地区情况对比如下: ")); newDiv.innerHTML = innerTR; // 必须通过innerHTML方式添加内容,通过字符串拼进去的现实不出内容 newTd.appendChild(newDiv); // td中添加div tr.parentNode.insertBefore(newTr,tr.nextSibling); // 必须通过tr的父节点才能用insertBefore,表示插入某个元素,这里表示在tr下个元素的前面(tr的后面)插入一行 tr.newDivId=newDivId; // 把新生成的div的ID赋给DIV } switchVisible(imgObj); // 控制展开还是合上内嵌表格 if(gLastDetailImgObj!=imgObj){ switchVisible(gLastDetailImgObj); gLastDetailImgObj=imgObj; } else{ gLastDetailImgObj=null; } } function switchVisible(imgObj){ if(!imgObj) return; // 如果imgObj对象为空,则返回 var tr=getOuterObj(imgObj,'TR'); var pvisible=('true'!=tr.currentVisibility); tr.currentVisibility=(pvisible?'true':'false'); // pvisible为真时,tr.currentVisibility为true;pvisible为假时,tr.currentVisibility为false; tr.nextSibling.style.display=(pvisible? '':'none'); // pvisible为真时,tr.nextSibling.style.display为'';pvisible为假时,tr.nextSibling.style.display为none; } //取得对象外围符合指定标签的第一个对象 function getOuterObj(obj,tagName){ while(obj!=null){ if(obj.tagName==tagName) return obj; obj=obj.parentNode; } return null; }


姓名 年龄 电话 性别 住址
1 11111111 1 1 1
2 22222222 2 2 2
3 33333333 3 3 3
4 44444444 4 4 4


将上面的代码保存为html格式后就能看到效果

[/code]

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

2条回答

为你推荐