jQuery hinzufügen von css-Wert inkrementell
Möchte ich hinzufügen, oder subtrahieren Sie den Wert von 'top' in der css ändern. Dann eher die Angabe einer bestimmten Anzahl von Pixeln, würde ich gerne hinzufügen von 20px auf den aktuellen Wert gestellt, die von der externen css.
Ziel ist es, die Liste bewegen, bis eine nach unten.
$('.up').click(function(){
$('.list').css('top','-20px');
});
den HTML -
<div id="container">
<ul class="list">
<li >first item</li>
<li class="active">second item</li>
<li>third item</li>
<li >fourth item</li>
<ul>
</div>
<a href="#" class="up">up</a>
<a href="#" class="up">down</a>
InformationsquelleAutor patrick | 2012-05-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Basierend auf Ihren edit:
Oder fügen Sie
20px
mit jedem Klick, während mitanimate
wie diese:Den
top
Eigenschaft wird nicht funktionieren, es sei denn, Sie geben auchposition
:Ändern
position
zuabsolute
oderrelative
wie pro Ihre Notwendigkeiten.Beachten Sie, dass, wenn Sie wollen, dass die
.list
element erscheint nur innerhalb seines Containers beim Wechseltop
Sie zuweisen müssenposition:relative
zum übergeordneten element undabsolute
zu.list
element.Sie sind herzlich willkommen
InformationsquelleAutor Sarfraz
Den
.css()
Methode erlaubt auch die "+=" und "- = " - syntax, die.animate()
nimmt. So können Sie einfach, dies zu tun:InformationsquelleAutor Doug
Sehen dieses JSFiddle ein vollständiges Beispiel: http://jsfiddle.net/NYVmw/
InformationsquelleAutor Rody van Sambeek
Ändern Sie Ihre " up "- Klasse in verschiedenen id ' s für die buttons
Nehmen den aktuellen Wert des Containers margin-top und ändern Sie es :
InformationsquelleAutor gabitzish
CSS ist nicht wirklich tut für Mathematik und operations, aber mehr nur für die Angabe Ihrer Stile. Der beste Weg, es zu tun wäre, in javascript,
zum Beispiel. Mit CSS3-Animationen wäre sogar besser. Wie diese
InformationsquelleAutor marklar
$('.list').css('position','relative').css('top','-20px');
$('.list').css({'position':'relative', 'top':'-20px'});
Ich will einfach nur, um mehr Aufmerksamkeit auf
position
. und auch, es ist nicht FALSCH, es funktioniert so gutja, es wird das Resultat richtig ist, aber gehen Sie lieber gleich zu werden in Ihrem Projekt verwendet haben?? es ist eine falsche Vorstellung von Berufung gleiche Funktion zweimal, in der Erwägung, dass es getan werden kann, in einem.
InformationsquelleAutor Eric Yin