2010-01-11 5 views
0

Я пытаюсь анимировать фоновое изображение на моем сайте, когда выбрано фоновое изображение. Я хочу, чтобы он скользил влево и выталкивал старый фон из картинки, может кто-нибудь помочь с кодом поскольку материал, который я написал, не работает,JQuery анимация с использованием анимации()

<script type="text/javascript"> 
$("a.background_btn").click(function(ev){ 
    ev.preventDefault(); 
// alert("hello"); 
    var url = $(this).attr("href"); 
// alert(url); 
    $.ajax ({ 
     url : url, 
     type: "POST", 
     success : function (data) { 
      $('#wrapper').css('background', 'url(/media/uploads/backgrounds/'+(data)+')'); 
      $('#wrapper').css('background-position', '-1000px 0px'); 
      $('#wrapper').css('background-repeat', 'no-repeat'); 
      $('#wrapper').animate({backgroundPosition: '0px 0px'}) 
     } 
    }) 
}); 
+0

Вы также можете опубликовать связанный с ним разметку, а также сообщить нам, что вы написали _is_, поскольку это будет хорошей отправной точкой для получения того, где вы хотите быть. –

+0

На данный момент, когда я выбираю фон, который я хочу, он очищает старый фон и сместит новый. Я надеялся, что смогу также сфокусировать старый фон – Udders

+0

, почему именно вы вызываете URL-адрес с помощью ajax для извлечения части другой url? –

ответ

0

Что с этим не получается? Это просто ничего не делает? Если да, то вы, вероятно, просто работает ваш код, прикрепленный обработчик слишком рано (до DOM готова), обернуть свой код в обработчик для этого события, например, так:

$(document).ready(function() { 
    .. your code here ... 
}); 
0

, прежде чем изменить фон эта линия

$('#wrapper').css('background', 'url(/media/uploads/backgrounds/'+(data)+')'); 

анимировать исходный фон в нужном направлении.

1

На основании вашего дополнительного примечания контейнер может иметь только один фон за раз, поэтому, когда вы устанавливаете фон в jquery, вы также удаляете старый фон.

Чтобы получить эффект, который вам нужен, вам нужно будет вставить дополнительный элемент «рядом» с #wrapper и вставить его или сшить фон вместе как изображение спрайта, а затем вы можете сдвинуть один фон вокруг по мере необходимости.

То есть, если вы хотите, чтобы новый фон буквально «вытолкнул» старый. Если вы в порядке со старым фоном, полностью выходящим, а затем новым, точка Брэндона может быть самой легкой.

Смежные вопросы