使用javascript和jquery排列数组元素
我正在尝试创建一个函数,该函数将在表中排列点,如图所示: 我需要修改的代码是:使用javascript和jquery排列数组元素,javascript,jquery,arrays,sorting,multidimensional-array,Javascript,Jquery,Arrays,Sorting,Multidimensional Array,我正在尝试创建一个函数,该函数将在表中排列点,如图所示: 我需要修改的代码是: var rowsCount = 7; var heightTable = 700; var rowHeight = 100; //an array with divs with elements, every element has a top and left position var arrayOfDivs = [({topPosition : 99, leftPosition: 100}),({topPos
var rowsCount = 7;
var heightTable = 700;
var rowHeight = 100;
//an array with divs with elements, every element has a top and left position
var arrayOfDivs = [({topPosition : 99, leftPosition: 100}),({topPosition : 150, leftPosition: 400}),({topPosition : 578, leftPosition: 10})];
//so here create a function that will create arrays = rowCount, so here we will need 7 arrays and arrange elements from arrayOfDivs into new arrays
function arrangeInNewArrays (rowsCont,heightTable,rowHeight) {
var j=0;
for i=0 {
if (arrayOfDivs.topPosition[0] > rowHeight*j < rowHeight){
var array+j = array+j+arrayOfDivs[i];
}else {
i++,j++
}
}
print arrayofDivs[i];
}
var rowscont=7;
var heightTable=700;
var行高=100;
//一个包含div和元素的数组,每个元素都有一个顶部和左侧位置
var arrayOfDivs=[({topPosition:99,leftPosition:100}),({topPosition:150,leftPosition:400}),({topPosition:578,leftPosition:10})];
//所以这里创建一个函数,它将创建arrays=rowCount,所以这里我们需要7个数组,并将ArrayOfDiv中的元素排列到新数组中
函数排列队列(rowsCont、heightTable、rowHeight){
var j=0;
对于i=0{
if(arrayOfDivs.topPosition[0]>rowHeight*j
有什么建议吗?如何按行排列点
请帮我做那件事///
代码:我认为您可以使用以下内容:
var ROW_HEIGHT = 100; //assume 100px, but you can change this
var rowsCount = 7;
var rows = [];
for(var i = 0; i < rowsCount; i++) {
rows[i] = [];
}
for(var i = 0; i < arrayOfDivs.length; i++) {
var position = arrayOfDivs[i];
//The assumption is that the table starts at position 0. If not, you will
//have to subtract the table's top position from topPosition
var rowNumber = Math.floor(position.topPosition / ROW_HEIGHT);
rows[rowNumber].push(position);
}
.将表格中的分数按行排列有人在我回答之前悬赏了我:D这不会很快得到回答,几个月前我和一个非常类似的人一起工作过我现在就要离开工作了,我一回到家就开始讨论这个问题。js提琴的概念是你代码的一个很好的例子。不是jibberish。请在一个JSFIDLE中显示,我看不出这里返回什么函数。THANKS@MarkWest该函数返回
行
。因此,该函数将创建7个新数组,其中元素位于最上面和最左边的行[1]({topPosition:top,leftPosition:left}{etc..},…..…..…在每个新创建的数组行[i]之后如何排列它通过数组中的左位置?您可以发布JSFIDLE来查看结果的确切内容吗?就是这样,但我发现如果我将元素添加到arrayOfDivs中,它们将显示在输出中…var arrayOfDivs=[({topPosition:99,leftPosition:100,km:44.54})…km不会显示在输出中。。。
for(var i = 0; i < rowsCount; i++) {
rows[i].sort(function(a, b) {
return a.leftPosition - b.leftPosition;
});
}