Bizarre Javascript ошибка обмена в изображениях - PullRequest
0 голосов
/ 06 марта 2011

У меня есть эта сумасшедшая ошибка, которая иногда появляется.Это было очевидно, когда я разрабатывал этот сайт, но потом он исчез на неделю или около того, и теперь, когда сайт работает, он вернулся.Я не думаю, что это имеет какое-либо отношение к моему хостингу, потому что оно также дает сбой локально.

Моя проблема в том, что я меняю фоновое изображение значения 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 ]

1 голос
/ 30 июня 2011

Я бы предложил использовать фоновое изображение в качестве спрайта и изменить положение фона как вместо изменения свойства фонового изображения.

Вот учебник, который я гуглил

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

0 голосов
/ 16 марта 2013

Вот одна строка

значение свопа по индексу i1 с i2

arr.slice(0,i1).concat(ar[i2],ar.slice(i1+1,i2),ar[i1],.slice(i2+1))
0 голосов
/ 06 марта 2011

Я дважды пытался просмотреть все слайды по пропаганде, но проблем не возникло. Я не знаю, что происходит, но вы можете сделать свой код немного чище и более читабельным, просто сделав массив для хранения содержимого каждого «слайда», и просто переберите его по щелчку мыши. Я думаю, вам не нужно устанавливать свойство background этого div, и вы можете просто включить изображение.
Просто совет, не уверен, поможет ли это с вашей проблемой, но сделает эту вещь более управляемой и проще добавлять больше вещей.

...