2014-02-13 1 views
2

Я создаю параллакс на странице, которая меняет положение фона, и то, что у меня есть, пока я хочу, чтобы все фоны начинались с нуля. Проблема в том, что я не хочу, чтобы все они начинались с нуля. Некоторые из них предопределили начальные позиции, но я не могу понять, как увеличить/уменьшить исходную позицию каждого экземпляра экземпляра из существующей позиции. Вы можете видеть в моем коде, у меня есть строка, которая может извлекать текущую позицию, но каждый раз, когда я пытаюсь использовать этот номер для изменения позиции, я получаю сумасшедшие результаты, когда изображение летает повсюду. Вот что у меня есть:JQuery Изменить положение фона из существующих для каждого экземпляра класса?

jQuery(document).ready(function($){ 
    $(window).scroll(function(){ 
     currentoffset = $(this).scrollTop(); 
     slowOff = Number(currentoffset)/3; 

     $(".full_width_img").each(function() { 
      //bgPosition = $(this).css('backgroundPosition').split(" "); 
      $(this).css('background-position', '50% -' + slowOff + "px"); 
     }); 
    }); 
}); 

Как я могу извлекать затем обновить каждого экземпляра фона положение объекта по отношению к существующему положению каждого человека?

добавил jfiddle ссылка: http://jsfiddle.net/79k8R/

+0

Можете ли вы поставить демо? – Will

+0

Я пытаюсь снять это: http://www.gamesradar.com/lightning-returns-final-fantasy-xiii-review/ – HeroicNate

+0

Я понимаю, какой эффект вы собираетесь, но я имел в виду «что у меня есть до сих пор "демо на jsfiddle или что-то, что люди могли взломать, чтобы помочь вам. Я не знаю какого-либо очевидного способа решить вашу проблему, и я не склонен воссоздать все это, чтобы попытаться помочь. Но если это уже было в скрипке ... – Will

ответ

0

Там есть логическая ошибка здесь. В цикле «каждый» вам может потребоваться отрегулировать положение фона (Y) для каждого изображения. Я добавил (slowOff-240 * index) вместо просто «showOff», который выглядит лучше. Но вы всегда можете настроить это на основе вашей потребности сделать его красивым. Пожалуйста, ознакомьтесь с этой скрипкой http://jsfiddle.net/LZhAL/

jQuery(document).ready(function($){ 
    $(window).scroll(function(){ 
     currentoffset = $(this).scrollTop(); 
     slowOff = Number(currentoffset)/3; 

     $(".full_width_img").each(function(index) { 
      //bgPosition = $(this).css('backgroundPosition').split(" "); 
      $(this).css('background-position', '50% -' + (slowOff-240*index) + "px"); 
     }); 
    }); 
});