奇怪的Javascript错误交换图像

时间:2011-03-06 19:19:49

标签: javascript css image swap

我有这个疯狂的错误,有时只会出现。很明显,当我开发这个网站时,它已经消失了一个星期左右,现在该网站已经恢复了。我不认为它与我的托管有任何关系,因为它也会在本地发生错误。

我的问题是我在每次点击时都交换了css值背景图片。它可以在95%的时间内完美地工作,但有时在15分钟的范围内,它只是不会显示大约一半的图像,看似随机。最奇怪的是,如果您查看检查器,您可以看到脚本正确地更改了css值,但图像根本没有加载。我不明白为什么!

以下是网站:shouldivoteoliver.com它位于“宣传”页面上。

这是Javascript:

$(document).ready(function() {
    var n=0;
        $(".button").click(function(){
            if (n===5){
                $('<video style="position:relative;left:250px;" src="http://dl.dropbox.com/u/1011105/6.ogg" controls="controls">your browser does not support the video tag</video>').appendTo($('#putin'));
                n++;
                $("#putin").css("background-image","none");
                }
            else{
                $('video').remove();
                $("#putin").css("background-image",function(){
                    if (n>13){
                    n=1;
                    return ('url(images/1.jpg)');
                    }
                    else{
                    n++;
                    return ('url(images/'+n+'.jpg)');
                    }
                    });
            }
        });
});

3 个答案:

答案 0 :(得分:1)

我建议使用背景图像作为精灵并将背景位置更改为 反对改变背景图像属性。

这是我用Google搜索的教程

http://www.noobcube.com/tutorials/html-css/css-background-image-sprites-a-beginners-guide-/

答案 1 :(得分:0)

我尝试了两次宣传的所有幻灯片,但我没有遇到任何问题。我不知道发生了什么,但你可以通过创建一个数组来存储每个“幻灯片”的内容,使你的代码更清洁,更可读,并在鼠标点击时简单地循环它。我猜你真的不需要设置那个div的背景属性,你可以只包括一个图像 只是一个建议,不确定它是否会对你的问题有所帮助,但会使这个东西更易于管理,更容易添加更多东西。

答案 2 :(得分:0)

这是一个单行

将索引i1i2

交换价值
arr.slice(0,i1).concat(ar[i2],ar.slice(i1+1,i2),ar[i1],.slice(i2+1))
相关问题