Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/464.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/3/html/76.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-显示正在加载gif_Javascript_Html_Image_Loader - Fatal编程技术网

Javascript-显示正在加载gif

Javascript-显示正在加载gif,javascript,html,image,loader,Javascript,Html,Image,Loader,我有一个页面,其中使用javascript函数加载随机图像 下面是标题标签 function pickimg(){ var imagenumber = 101 ; var randomnumber = Math.random() ; var rand1 = Math.round( (imagenumber-1) * randomnumber) + 1; images = new Array images[1] = "images/1.jpg" images[2] = "images/2.gif

我有一个页面,其中使用javascript函数加载随机图像

下面是标题标签

function pickimg(){ 
var imagenumber = 101 ;
var randomnumber = Math.random() ;
var rand1 = Math.round( (imagenumber-1) * randomnumber) + 1;
images = new Array
images[1] = "images/1.jpg"
images[2] = "images/2.gif"
images[3] = "images/3.jpg"
images[4] = "images/4.jpg"
images[5] = "images/5.gif"
images[6] = "images/6.jpg"
images[7] = "images/7.jpg"
images[8] = "images/8.jpg"
images[9] = "images/9.jpg"
var image = images[rand1]
document.randimg.src = image
}
</script>
函数pickimg(){
var imagenumber=101;
var randomnumber=Math.random();
var rand1=数学取整((imagenumber-1)*随机数)+1;
图像=新阵列
图像[1]=“图像/1.jpg”
图像[2]=“图像/2.gif”
images[3]=“images/3.jpg”
images[4]=“images/4.jpg”
图像[5]=“图像/5.gif”
images[6]=“images/6.jpg”
images[7]=“images/7.jpg”
images[8]=“images/8.jpg”
images[9]=“images/9.jpg”
var image=images[rand1]
document.randimg.src=图像
}
然后这个在身体里:

<body onLoad="pickimg()">
<a href="" onClick="pickimg();return false;"><IMG SRC="images/ajax-loader.gif"     name="randimg" border=0></a>


选择一个随机图像。单击图像时,将加载并显示一个新图像。这可能需要一两秒钟。我希望在用户单击后,在加载下一个图像时显示ajax加载程序。我是新来的,我尝试过各种各样的事情,但没有什么能给我想要的结果。请帮助,谢谢。

预加载加载图像。然后,不要直接将源更改为新映像,而是将其更改为加载程序,然后将其更改为新映像。这将导致加载程序立即显示(因为它已预加载),然后新图像将在准备就绪时显示。

首先,请将该代码替换为以下代码(在结束脚本标记之前),以使其正确:

function pickimg(){ 
   var imagenumber = 101, ext,
        images = new Array(10), i=0,
        randomnumber = Math.random(),
        rand1 = 1 + Math.round((imagenumber-1) * randomnumber);
    while (++i<10) {
        ext = (i===2||i===5)? ".gif" : ".jpg";
        images[i] = "images/"+ i + ext;
    }
    document.randimg.src = images[rand1];
}
函数pickimg(){
var imagenumber=101,外部,
图像=新数组(10),i=0,
randomnumber=Math.random(),
rand1=1+数学舍入((imagenumber-1)*随机数);

虽然(++i在示例代码中找不到Ajax加载程序,但答案如下:

getImage: function(fn){
                var url = "/apps/blah/imgpath/",
                    $imgContentContainer = $("myselector");
                $imgContentContainer.html(loadingImgTag);
                $.ajax({
                    async: false,
                    url: url + fn,
                    success: function(d){ $imgContentContainer.html(theAjaxLoadedImg); }
                });
            }

谢谢你的回复。我有点困惑,我应该用你提供的代码替换我head标签中的所有javascript?顺便说一句,我使用101个图像,各种jpg gif和png文件。出于明显的原因,我在我的OP中只放了9个。哦,希望你能读我写的脚本。但是,如果它是图像的随机扩展,我的编辑可能没有帮助。…有那么多的图像。这个脚本写得很糟糕。别忘了分号。而且,对象是用编程插入符号实例化的。参考:新数组(WTF?)。我应该注意,loadingImgTag引用了Kolink前面提到的响应。预加载一个图像,然后总是在ajax调用加载新图像之前立即显示它。有趣的是,您的“显而易见的答案”包括jQuery的使用,即使OP在他们的问题中没有使用或提到它。显然,我一定错过了备忘录。这里没有代码使用“ajax加载程序”,这也很有趣.而且,由于这些天95%的web应用程序使用了jQuery,我做了一个假设…希望这不是不合适的。我对我的原始答案做了一个口语化的、更加圆滑的编辑。非常感谢各位的回复。但我仍然很困惑。我对javascript非常熟悉。我仍然不太理解你们的回答建议Joe。目前。当您单击随机图像中的一幅时,它将加载下一幅随机图像,然后将其显示。我希望在加载的图像上显示一个.gif,直到加载/显示下一幅图像。