我正在为我所在大学的学生组织创建设备管理和租赁系统。 webapp在我的计算机上完美响应,但是当我尝试从iPad或iPhone运行webapp时,似乎有点无意义。 (显然除了移动版Chrome之外,这也会影响Safari的桌面版。)
webapp在很大程度上依赖于几个相对简单的HTML表。当我在移动设备上运行webapp时,表格以反向,升序排列,而不是像桌面版本那样降序。
这(显然)会影响应用程序的完整性,我不确定原因。
潜在的问题代码:
function tableMaker(){
var table = document.getElementById('AddT')
//If the table is empty, start counting. Else, resume count from the last cell.
if (table.rows.length < 1){
var happy = "0"+table.rows.length
var rownum = happy.slice(-2)
}else{
var happy = $('#AddT tr:last').prop("id")
var happier = "0" + (Number(happy)+1)
var rownum = happier.slice(-2)
}
var row = table.insertRow(table.length)
row.id = rownum
console.log("Creating cells with the ID: "+rownum)
var cell0 = row.insertCell(0)
var cell1 = row.insertCell(1);
var cell2 = row.insertCell(2);
//The first cell won't have the option to be deleted.
if(table.rows.length > 1){
cell0.innerHTML = "<text onclick='javacript:delRow(\""+rownum+"\")'>x</text>"
}
cell1.innerHTML = //Some painfully long select tag
cell2.innerHTML = "<select id=select"+rownum+" disabled></select>"
$('#addEquip').show("fade") //The div in which the table is contained
$('#manLoad').hide() //A loading animation
}
Two web browsers showing different results (Bortha Muggerums是我虚构的合作开发者。她帮助了我很多。)
在这张图片中,人们可以看到我遇到的问题。在Safari中,第一个之后的每个单元格都标记为“01”,而在Chrome中,每个单元格都按顺序标记,因为它应该发生。
最终我需要针对iPad进行优化。任何和所有的帮助将是超级赞赏。谢谢!
答案 0 :(得分:0)
而不是使用
var happier = "0" + (Number(happy)+1)
使用
var happier = "0" + (parseInt(happy,10)+1)
答案 1 :(得分:0)
我想我已经明白了。无论出于何种原因,Google Chrome浏览器的桌面版可以将window
等同于table.rows.length
,而Safari和其他网络浏览器则需要恶作剧table.length
。
更改
.rows
到
var row = table.insertRow(table.length)
解决了这个问题。