Friday, October 14, 2011

JQuery .animate() - Animasi Relatif Kumulatif

jquery .animate() kumulatif

Selain menuliskan angka secara apa adanya dalam nilai properti animasi, sebuah sistem animasi dalam juga dapat dituliskan dengan nilai relatif. Hal ini akan menciptakan efek kumulatif (bertambah/berkurangnya nilai sedikit demi sedikit) untuk menciptakan langkah-langkah objek secara bertahap melalui perintah yang diberikan berkali-kali.

Sintaks

$(sasaran).animate({"properti": "+=N"}, durasi);
$(sasaran).animate({"properti": "-=N"}, durasi);

N adalah nilai properti relatif.

Contoh Penerapan Animasi Kumulatif

Di sini Saya membuat dua buah tombol dan sebuah area target. Tombol pertama digunakan untuk memberikan perintah "bergerak ke kanan!" sedangkan tombol yang ke dua digunakan untuk memberikan perintah "bergerak ke kiri!"

Kerangka

<div id='boks1'></div>
<button id='left'>&laquo;</button>
<button id='right'>&raquo;</button>

CSS

#boks1 {
  position:relative;
  background:#ef5655;
  width:60px;
  height:50px;
  margin:2px;
}

Deklarasi JQuery

$(document).ready(function() {
    $('#right').click(function() {
        $('#boks1').animate({"left": "+=60px"}, 'fast');
    });
    $('#left').click(function() {
        $('#boks1').animate({"left": "-=60px"}, 'fast');
    });
});

Pandangan Lebih Jauh

Mungkin kamu tidak tahu bahwa konsep animasi kumulatif ini sebenarnya juga bisa dijadikan sebagai cikal-bakal terciptanya sebuah slider JQuery. Dengan sedikit kreativitas, sebuah slider sederhana dapat dibuat dengan menerapkan animasi kumulatif ini:

SlideShow JQuery

Labels: ,

12 Comments:

At Sunday, October 16, 2011 at 2:08:00 PM GMT+7, Blogger Beben Koben said...

master nih euy yg punya....keren bgt blognya \m/

 
At Monday, October 17, 2011 at 11:20:00 AM GMT+7, Blogger Bayu said...

kalo sudah di terangin buat animasinya. . kenapa kotak buat tempat animasi gag di jelasin sih?? haha pelit :D ^^

di tunggu artikel bermanfaat berikutnya .. .

 
At Monday, October 17, 2011 at 11:37:00 AM GMT+7, Blogger Sinto said...

Gan saya Pinjem salah satu postingannya, emm tentang blog pager, syarat dan ketentuan sudah aku ikuti, makasih sebelumnya

 
At Monday, October 17, 2011 at 12:14:00 PM GMT+7, Blogger Taufik Nurrohman said...

@Bayu: Kalau kotak animasinya dijelasin jadi terlalu detil mas, nanti malah jadi tambah bingung. Emang bikin boks pake CSS apa susahnya?

 
At Monday, October 17, 2011 at 12:17:00 PM GMT+7, Blogger Taufik Nurrohman said...

@Zh!nTho: Oke..

 
At Thursday, April 26, 2012 at 10:34:00 AM GMT+7, Blogger Unknown said...

waduh tutorial dasar kok udah mumet begini, cara mengunakannya bagai mana nich maklum newbie om

 
At Friday, May 18, 2012 at 8:03:00 PM GMT+7, Anonymous Anonymous said...

mas boleh minta kode slideshownya g?
sepertinya ini yang aku butuhkan, bisa aku taruh di baca manga online
riquest
tanpa otomatis next image dan sekalian auto size imagenya ya ...

 
At Friday, May 18, 2012 at 8:17:00 PM GMT+7, Blogger Taufik Nurrohman said...

@hentaindo team Anda belum beruntung. Sayangnya tidak boleh. Beberapa orang yang mengunjungi blog ini dan berhasil meniru desain Saya lebih suka mencuri dibandingkan meminta T_T

 
At Friday, May 18, 2012 at 9:05:00 PM GMT+7, Anonymous Anonymous said...

@Taufik Nurrohman kalo gitu, riquest slideshow seperti yang aku tulis di atas deh ^_^

 
At Friday, May 18, 2012 at 10:23:00 PM GMT+7, Blogger Taufik Nurrohman said...

@hentaindo team Itu Nivo Slider yang sudah dimodifikasi.

 
At Saturday, October 20, 2012 at 4:11:00 PM GMT+7, Blogger shadow said...

gaaaaan mau tanya dunk
$(sasaran).animate({"properti": "+=N"}, durasi);
tapi pengen di batasin jadi misalnya
var c = 30
$("#box").animate({"left": "+="+c+"px"},"slow");
mau di batasi jika 100 maka gambarnya hilang

 
At Monday, October 22, 2012 at 9:04:00 PM GMT+7, Blogger Taufik Nurrohman said...

Cek kondisi elemen sebelum animasi dijalankan:

$('button').click(function() {
if (parseInt($('#box').css('margin-left'), 10) != 100) {
$('#box').stop().animate({'margin-left':"+=10px"}, 600);
} else {
$('#box').hide();
}
});

 

Post a Comment

<< Home