无法在javascript中显示图像

无法在javascript中显示图像,javascript,Javascript,我正在使用javascript显示图像。我有5个图像,但无法显示它们。我的代码如下: function set() { var i; for(i=1; i<=5; i++) { var image = "<img src=images/sl + i + />"; document.getElementById('slider').innerHTML = image; } } setInterval("set

我正在使用javascript显示图像。我有5个图像,但无法显示它们。我的代码如下:

function set()
{
    var i;  
    for(i=1; i<=5; i++)
    {
        var image = "<img src=images/sl + i + />";  
        document.getElementById('slider').innerHTML = image;
    }
}
setInterval("set()","500");


<div id="slider">   
    <img src="images/sl1.jpg" />
</div>
改变-

var image = "<img src=images/sl + i + />"; 

假设图像的文件名为L1、sl2、…、sl5,则应为

var图像=

试试这个:

function set()
{
    var i;  
    for(i=1; i<=5; i++)
    {
        var image = "<img src='images/sl" + i + "'/>";  
        document.getElementById('slider').innerHTML = image;
    }
}
setInterval("set()","500");



<div id="slider">   
    <img src="images/sl1.jpg" />
</div>

“i”变量是字符串的一部分,您需要:

var image = "<img src=images/sl" + i + "/>"; 

你现在总是放同样的图像,循环结束的图像。我可以提出以下建议:

var i = 0;
function set(){
    var image = "<img src=images/sl" + i + "/>";  
    document.getElementById('slider').innerHTML = image;
    i = (i+1)%5;
}
setInterval(set, 500);
我修复了一些其他错误/问题。切勿将字符串作为第一个参数传递给setInterval,传递函数名或函数表达式。第二个需要的参数是一个数字,传递一个字符串文本是没有意义的


但如果在代码的HTML部分定义img元素,只更改src属性而不是整个幻灯片内部HTML,则会更简洁。它还将告诉浏览器仅在图像加载后才更改显示。

您的设置功能将非常快速地替换每个图像。这是故意的吗?@MattBall可能是故意的!您可能想考虑更改IMAG标记中的SRC,而不是更新滑块DIV的内容,因为后者可能会导致闪烁。您可能还想引用属性值:@ MattBoo:因为初始HTML包含一个:替换图像似乎也有扩展名。@Swapnesh thnx供您回复,但它也不起作用…我的| images文件夹|…??图像大小与此有什么关系?@UmerBest这是另一个问题。.接受这个问题,因为它符合上述问题。不要将字符串传递给setInterval。这是伪装的评估,没有必要。
var image = "<img src=images/sl" + i + "/>"; 
var i = 0;
function set(){
    var image = "<img src=images/sl" + i + "/>";  
    document.getElementById('slider').innerHTML = image;
    i = (i+1)%5;
}
setInterval(set, 500);