jQuery Parallax Background
HTML
<section> ... </section>
CSS
body {
background:black url('img/bg-1.png') repeat-y 0 0;
margin:0 0;
padding:0 0;
}
section {
background:transparent url('img/bg-2.png') repeat-y 0 0;
padding:50px;
}
jQuery
$(function() {
var $window = $(window),
$body = $('body'),
$section = $('section');
$window.on("scroll", function() {
var distance = $(this).scrollTop();
$body.css('background-position', '0 -' + distance + 'px');
$section.css('background-position', '0 -' + distance * 2 + 'px');
});
});
Pembaharuan: Versi JavaScript Murni
Menggunakan pageYOffset
sebagai pengganti $(window).scrollTop()
:
(function() {
var bgLayer = document.getElementsByTagName('div');
window.onscroll = function() {
var top = pageYOffset;
document.body.style.backgroundPosition = '0 ' + (top*2) + 'px';
bgLayer[0].style.backgroundPosition = '0 ' + (top*0.5) + 'px';
bgLayer[1].style.backgroundPosition = '0 ' + (top*1.5) + 'px';
// Dan seterusnya...
};
})();
Labels: JavaScript, jQuery, Potongan
10 Comments:
fungsinya buat apa mas? ga ada penjelasannya :(
By Anonymous, at Monday, September 3, 2012 at 10:02:00 AM GMT+7
Bedanya ama background biasa apa, Mas? :\
By MUX SPARROW, at Monday, September 3, 2012 at 10:22:00 AM GMT+7
bangbungg & MUX: Coba gulung layarnya pelan-pelan dan perhatikan efek gerakan latar di bagian samping kanan :)
By Taufik Nurrohman, at Monday, September 3, 2012 at 11:22:00 AM GMT+7
oh ngerti2 background yang hitamnya lebih lambat saat di scroll :o
By Anonymous, at Monday, September 3, 2012 at 12:24:00 PM GMT+7
dari blogku nih paralax scroll kayaknya haha :D
liat nih mas bayu, terasa lebih smooth..
By Putra, at Monday, September 3, 2012 at 7:48:00 PM GMT+7
Kelihatannya kasar, soalnya ukuran background yang Saya pakai kecil. Kalau ukuran background diperbesar hasilnya akan lebih halus ⇒ http://jsfiddle.net/tovic/ZNZUM/4/
Selain itu, arah paralax di blogmu terbalik. Mungkin itu cuma gaya, tapi Saya lebih suka yang natural :)
By Taufik Nurrohman, at Monday, September 3, 2012 at 9:31:00 PM GMT+7
kalau gambarnya ingin diatur posisi nya bagaimana mas,
supaya berada dikanan,
soalnya aku sudah mencoba mengatur posisi nya pada background:transparent url('img/bg-2.png') repeat-y 0 0; menjadi background:transparent url('img/bg-2.png') repeat-y 660px 0; namun ketika scroll aku turunkan kebawah, posisinya kembali lagi ke pojok kiri.
By Penggemar Rahasia, at Wednesday, April 9, 2014 at 10:29:00 PM GMT+7
$body.css('background-position', '660px -' + distance + 'px');
$section.css('background-position', '660px -' + (distance * 2) + 'px');
By Taufik Nurrohman, at Friday, April 18, 2014 at 6:29:00 PM GMT+7
terima kasih
By Penggemar Rahasia, at Saturday, April 19, 2014 at 9:01:00 AM GMT+7
Cukup menarik, mungkin bisa menambahkan script smooth scroll biar efek parallax lebih hidup
By Anonymous, at Monday, June 8, 2015 at 7:10:00 AM GMT+7
Post a Comment
<< Home