【发布时间】:2011-08-30 13:58:25
【问题描述】:
我在解决这个问题时遇到了一点麻烦,想知道是否有人可以将我推向正确的方向。我想做的是有一个包含两个组件的列表,一个标签和一个值。所以本质上我想要一个看起来像一个能够上下滚动的表格的列表(因为我的大小是预设的,我必须显示所有的值),我只是不知道如何处理它。
我的第一种方法是在一个带有溢出:滚动的 div 中嵌入一个包含我所有值的表格。在我将它带入 Mobile Opera 之前,这很棒,溢出不起作用。
为了快速修复,我将标签和值放入单独的选择列表中,这确实有效且看起来不错。除了我不想单独滚动它们,即如果我滚动一个而不是另一个,标签与它们的值不匹配。
我现在采用的一种快速而肮脏的方法是将它们作为字符串组合到一个选项中,但它看起来并不好,理想情况下我希望 text-align:left / text-align:right 以获得更好的查看效果。
到目前为止我所拥有的:
var statusVarLabel = ["label 1","label 2","label 3","label 4","label 5","label 6","label 7","label 8","label 9","label 10","label 11","label 12","label 13","label 14","label 15","label 16","label 17","label 18","label 19","label 20"];
var statusVarInfo = ["variable 1","variable 2","variable 3","variable 4","variable 5","variable 6","variable 7","variable 8","variable 9","variable 10","variable 11","variable 12","variable 13","variable 14","variable 15","variable 16","variable 17","variable 18","variable 19","variable 20"];
function getStatus(){
var varContainer = document.getElementById("varContainer");
varContainer.size = statusVarLabel.length;
tabSpacing = 0;
for (var i=0; i < statusVarLabel.length; i++) {
if (tabSpacing < statusVarInfo[i].length)
tabSpacing = statusVarInfo[i].length;
};
for (var i=0; i < statusVarLabel.length; i++) {
var check = 0;
for (var j=0; j < varContainer.length; j++) {
if ( statusVarLabel[i] == varContainer.options[j].text.slice(0,statusVarLabel[i].length)){
check = 1;
break;
}
};
var stringSpacing = "";
for (var k=0; k < (tabSpacing-statusVarInfo[i].length)+5; k++) {
stringSpacing = stringSpacing + " ";
};
if (check == 0)
addOption(varContainer, statusVarLabel[i] + stringSpacing + statusVarInfo[i], i);
};
}
只是想知道是否有人遇到过同样的问题。我对 HTML 游戏还是有点陌生,有没有办法在列表中嵌入表格或 div?
【问题讨论】:
标签: javascript html select