Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.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 在';x';时间量_Javascript_Image_Timer - Fatal编程技术网

Javascript 在';x';时间量

Javascript 在';x';时间量,javascript,image,timer,Javascript,Image,Timer,我该如何向这个js添加一个计时器,以便图像在“x”时间后自动更改。目前,更改是通过带有“rel”属性的“a href”进行的,但仍然需要带有“rel”属性的函数 js: html: 您可以使用setTimeout函数调用预定义函数来更改图像,如下所示: var changeImage = function (){ <code> }; var t = setTimeout(changeImage, <time in milliseconds>); var change

我该如何向这个js添加一个计时器,以便图像在“x”时间后自动更改。目前,更改是通过带有“rel”属性的“a href”进行的,但仍然需要带有“rel”属性的函数

js:

html:



您可以使用setTimeout函数调用预定义函数来更改图像,如下所示:

var changeImage = function (){
<code>
};
var t = setTimeout(changeImage, <time in milliseconds>);
var changeImage=函数(){

};
var t=setTimeout(changeImage,);
确保您没有调用
setTimeout(changeImage(),)(注意两个括号)

这是要避免的,您应该尝试使用函数而不是字符串作为setTimeout()的第一个参数进行计算

或者,您可以使用匿名函数,而不是创建changeImage。 前

var t=setTimeout(函数(){
},);

您应该考虑使用SETTIFECT和一个图像数组来更改源代码。这将强制图像连续循环

var images = ['header_01.jpg','header_02.jpg','header_03.jpg'], 
    index = 0, // starting index
    maxImages = images.length - 1;
var timer = setInterval(function() {
    var curImage = images[index];
    index = (index == maxImages) ? 0 : ++index;
    // set your image using the curImageVar 
    $('div.mystuff img').attr('src','images/'+curImage);
 }, 1000);

每当你把一个字符串传给
setTimeout()
@squegy,上帝就会杀死一只小狗——如果你要发帖,至少要用一些细节对它进行建设性的批评。我在网上看到的每一个地方,都有围绕函数名的引号。你可以用正确的方式往下看,但是将字符串传递给
setTimeout()
被认为是
eval()
的一种形式,如果可能的话,应该尽量避免。我只是想让这位buding JS程序员明白,将函数对象传递给
setTimeout()
总是比要计算的字符串好。匿名函数是JS强大功能的一部分。:)我应该注意我是js新手,不知道如何将其合并到现有js中我应该注意我是js新手,不知道如何将其合并到现有js中。将这段代码放在document ready函数中。在
images
数组中填入要循环浏览的图像的名称。您可以删除
.mystuff
div中除一个以外的所有图像。我已经更新了我的代码。它“应该”起作用。
var changeImage = function (){
<code>
};
var t = setTimeout(changeImage, <time in milliseconds>);
var t = setTimeout(function() { <code>}, <time in milliseconds>);
var images = ['header_01.jpg','header_02.jpg','header_03.jpg'], 
    index = 0, // starting index
    maxImages = images.length - 1;
var timer = setInterval(function() {
    var curImage = images[index];
    index = (index == maxImages) ? 0 : ++index;
    // set your image using the curImageVar 
    $('div.mystuff img').attr('src','images/'+curImage);
 }, 1000);