Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过迭代列表更改图像的src_Javascript_Html_Image_Src - Fatal编程技术网

Javascript 通过迭代列表更改图像的src

Javascript 通过迭代列表更改图像的src,javascript,html,image,src,Javascript,Html,Image,Src,我试图每十分之一秒改变一次图像。我已经在这里写了一个基于其他回应的脚本,它仍然不起作用。以下是脚本: var images = Array(); var index = 0; images = ["rock.png", "paper.png", "scissors.png"]; var opponent = document.getElementById("opps"); setInterval(myMethod, 100); function myMethod( ){ oppone

我试图每十分之一秒改变一次图像。我已经在这里写了一个基于其他回应的脚本,它仍然不起作用。以下是脚本:

var images = Array();
var index = 0;
images = ["rock.png", "paper.png", "scissors.png"];
var opponent = document.getElementById("opps");

setInterval(myMethod, 100);

function myMethod( ){
    opponent.src = images[index];

    if (index <= 1){
        index++;
    }
    else{
        index = 0;
    }
}
var images=Array();
var指数=0;
images=[“rock.png”、“paper.png”、“scissors.png”];
var=document.getElementById(“opps”);
设置间隔(myMethod,100);
函数myMethod(){
accounter.src=图像[索引];

如果(index你可以做
索引%images.length
在数组上无限循环-当你遍历索引时,它只会绕回来

另外,您应该使用
让a=[]
创建一个空数组。您不必这样做,但这是一个很好的做法-

最后,100毫秒对于改变图像src来说可能有点太频繁了,在大多数情况下,大约1-5秒应该足够了

var images=[“rock.png”、“paper.png”、“scissors.png”];
var指数=0;
var=document.getElementById(“opps”);
设置间隔(myMethod,100);
函数myMethod(){
objective.src=图像[索引%images.length];
指数+=1;
console.log(对手.src);
}

您可以对%images.length执行
索引操作,以无限循环数组-当您遍历索引时,它只会环绕数组

另外,您应该使用
让a=[]
创建一个空数组。您不必这样做,但这是一个很好的做法-

最后,100毫秒对于改变图像src来说可能有点太频繁了,在大多数情况下,大约1-5秒应该足够了

var images=[“rock.png”、“paper.png”、“scissors.png”];
var指数=0;
var=document.getElementById(“opps”);
设置间隔(myMethod,100);
函数myMethod(){
objective.src=图像[索引%images.length];
指数+=1;
console.log(对手.src);
}

我找到了答案。对于其他人来说,出现此错误的原因是脚本在html之前运行。在img之后运行脚本。

我找到了答案。对于其他人来说,出现此错误的原因是脚本在html之前运行。在img之后运行脚本。

您的代码运行正常,图像中的字符串运行正常ray是相对的,所以可能您的项目中没有它们。我简化了一些事情,首先在同一个表达式中初始化并声明
图像
数组,其次,我将
myMethod()
中的if语句转换为三元表达式:

let index=0
常量图像=[
"http://placekitten.com/200/200", 
"http://placekitten.com/210/210", 
"http://placekitten.com/220/220"
]
const oppost=document.getElementById(“opps”);
设置间隔(myMethod,1000)
函数myMethod(){
accounter.src=图像[索引];

index=index您的代码运行正常,
images
数组中的字符串是相对的,因此您的项目中可能没有这些字符串。我简化了一些事情,首先初始化并在同一表达式中声明
images
数组,然后在
myMethod()中打开if语句
转换为三元表达式:

let index=0
常量图像=[
"http://placekitten.com/200/200", 
"http://placekitten.com/210/210", 
"http://placekitten.com/220/220"
]
const oppost=document.getElementById(“opps”);
设置间隔(myMethod,1000)
函数myMethod(){
accounter.src=图像[索引];

index=index这回答了你的问题吗?它没有。我得到了这个错误:错误:未捕获类型错误:无法在MyMethod设置null的属性“src”这回答了你的问题吗?它没有。我得到了这个错误:错误:未捕获类型错误:无法在MyMethod设置null的属性“src”超过that@Kenzoid“石头”,“纸”,“剪刀”是三张图片。张贴的代码循环通过
索引
0
1
2
。任务完成了!超过that@Kenzoid“石头”、“布”、“剪刀”“是三个图像。发布的代码循环通过
索引
0
1
2
。任务完成!
<img src = "" id ="opps"/>