2012-06-13 22 views
6

benim son soru sadece x ekseni background-konumunu değiştirmek için çalışılıyorjQuery arka plan değişiklik bir eksen sadece

yüzden basitleştirecek herkesi şaşkına düşünüyorum. tek bir değer 50% için, diğer varsayılan tanımlanır, varsayılan, bu nedenle bu fonksiyon ile:

function colorChangePiano() { 
    var bp = $("background-position").css; 
    $("#target").css('background-position', (bp == -1131) ? '-377' : '0'); 
} 

döner arka-konumu: 0 50%;

X eksenini değiştirmek, ancak y eksenini değiştirmeden bırakmak için işlevi nasıl değiştirebilirim?

düzenlenmiş -> 4 sütun ve 4 satırlı bir hareketli yazı için, y ekseni dinamik kalmalıdır. burada çalışma sitesi: http://www.avalonbyeaw.com tıklayın "bitirir." biz canlı sitedeki bazı çılgın karmaşık komut dosyası ile çalışan, ama hala gerçekten bu soruna bir çözüm

cevap

2

background-position 2 değerleri ekleme bulmak istiyoruz, çünkü ben bu şekilde (yine de buraya bu kadar bırakacaktır var) bekler. Ayrıca mevcut pozisyonu daha kolay hale getiren bir değişkene kaydedin.

var pos = -377; 
var colorChangePiano = function() { 
    if (pos == -377) { 
    pos = -1131 
    } 
    else { 
    pos = -377 
    } 
    $('#target').css({ 
    'backround-position': pos + 'px 0px' // will result in "Xpx 0px" 
    }); 
} 
+0

hmmm ... kodu değiştirdim ama işe yaramıyor. html çağrısı hala onClick = "colorChangePiano()" olmalıdır? –

+0

İdam edilmek için ihtiyaç duyduğunuzda kesinlikle bu işlevi çağırmanız gerekir! Ayrıca hangi değerlerin ekleneceğinden emin değilim, bu yüzden piksellere göre hizalamak istemiyorsanız% olarak değiştirin. – TheHippo

+0

lol tabiki! ama bu hala doğru arama, değil mi? Sadece bu aptal bir soru ise html –

5

İşte bunu nasıl yapacağım.

$('#target').css('background-position', function(i, backgroundPosition) { 
    return backgroundPosition.replace(/\d+px/, '60px'); 
}); 
+0

beni affetmedi emin olmak istedim, ama ben javascript bebeğim. Bunu html'de nasıl ararım? –

+2

Gerçekten orada bir işlev koyabilirsiniz? Bunu şimdiye kadar bilmiyordum. Teşekkürler. –

+0

@alex Hala bunu nasıl adlandırdığınızı merak ediyorum. '' etiketi –