【发布时间】:2015-09-01 03:26:40
【问题描述】:
我有一个函数应该通过随机生成一个数字来将 10 个随机图像添加到一个 div。这是函数:
function Images()
{
clore();
var total = 133;
var gif = 3;
var name = "FileName";
var i = 0;
while (i < 10)
{
var num = random.nextInt(total - 1 + 1) + 1;
if(num > (total - gif))
{
var type = ".gif";
}else{
var type = ".jpg";
}
var elem = document.createElement("img");
elem.src = 'images/' + name + '/' + num + type;
document.getElementById("DIV").appendChild(elem);
i++;
}
}
clore() - 清除 div 的 innerhtml
var total - 文件夹中所有图片的总数
var gif - 文件夹中 .gif 图像的总数
var name - 图片所在文件夹的名称
图片命名为 1 到 133,除了最后三个为 .gif 外,其余均为 .jpg。
这样:1.jpg.....130.jpg 然后 131.gif.....133.gif .
我知道该函数正在运行,因为 clore 函数清除了 div,但之后没有任何反应。
我也知道我没有使用任何保留条款,因为我已经反复更改了所有名称?
【问题讨论】:
-
JavaScript 没有
random.nextInt方法。也许您将它与 Java 混淆了? -
我用过 Math.floor(Math.random() * (total +1));和变化无济于事
-
如果这不能解决您的问题,那么除了这个功能之外,还有其他东西会破坏程序。您应该检查开发人员控制台是否有错误,并逐步检查您编写的函数,以确保它们接收到预期的输入并生成预期的输出。另一个建议是将容器的 ID 更改为“DIV”以外的其他内容,这不是描述性或澄清性的,大多数开发人员会认为您将 ID 误认为是标签名称。
-
我已经确保所有的 id 都是正确的并重命名了它们。我创建了一个新的 html 文档,其中只有上面的函数、一个调用它的按钮以及要放置图像的 div,仍然注意到发生了。
标签: javascript html image var