我有一个jquery代码,可以绘制水平线。但我的问题是没有一条线是预先定义的。这是我的代码
function loadbar()
{
var screensize = 30;
var myarr = Array(screensize).join(("400").concat(","));
var values = ["800","800"];
for (var i in values ) {
var val = values [i];
var width = 2;
var gap = 2;
$('#container').append(
$('<div />').addClass('bar').css({
width: width
, height: val
, left: (width + gap) * i + gap
})
);
}
}
没有of行的值。假设800是高度,我有两行。但我需要更多的线路。如果我的屏幕宽度是1024,我需要画1024条线。为此,我简单地定义了一个屏幕大小变量,myarr不生成次数。
但当我在for循环中使用myarr而不是值时,它不会显示任何内容。你们能告诉我问题在哪里吗?
感谢
我认为你的代码的问题是你给myarr分配了一个字符串,请尝试下面的代码,并检查它是否符合你的目的
function loadbar()
{
var screensize = $(window).width();
var myarr = Array(screensize).join($(window).height() + ",").split(",")
for (var i in myarr) {
var val = parseInt(i)
var width = 2;
var gap = 2;
$('#container').append(
$('<div />').addClass('bar').css({
width: width,
height: val,
left: (width + gap) * i + gap
}));
}
}