Я хочу анимировать положение фона элемента слева направо, справа налево (или наоборот) и продолжать его повторять. Я сделал это, но неправильно.jQuery background-position слева направо, справа налево
- Код грязен
фон положение Элемента делает остановку анимации через некоторое время.
window.setInterval(function(){ if($(element).css("background-position") == posRight + "px 50%"){ move("left"); } else if($(element).css("background-position") == posLeft + "px 50%"){ move("right"); } }, 500);
Я уверен, что проблема заключается в setInterval, но я не знаю, что я могу использовать вместо этого. Если я не использую интервал, if-statement не проверяется (или только один раз). Если я уменьшу интервал времени, он просто не сработает, потому что if-statement проверяет, находится ли позиция в X, но позиция начинается с X, поэтому ничего не делает.
Где я говорю? Fiddle: http://jsfiddle.net/8eS3a/1/
Что мне нужно? Обходной путь для setInterval.
Вы можете изменить градиент на фоновое изображение, чтобы увидеть, что происходит. Я использовал градиент, потому что иногда изображения удаляются.
Это то, что я хотел достичь, но почему она так долго бежать? В скрипке вы, вероятно, этого не заметите, но если ваш сайт немного тяжелее, для вступления в силу потребуется довольно много времени. – kalekip1
Не знаете, почему? В этом коде нет ничего, что должно было бы замедлить, насколько я могу судить, и оно начинается сразу же, поэтому я тоже не могу это проверить! – adeneo
Ну, это не имеет значения, но если есть решение, я хотел бы знать, спасибо. – kalekip1