Membuat Efek Zoom pada Galeri Foto dengan JQuery Zoomooz
Everyone loves images. Image atau Foto memang tidak bisa terpisahkan dari suatu website. Keberadaan image tentunya akan mempercantik tampilan suatu website. Di dalam suatu website, image dapat berfungsi sebagai background, header, logo, header slider, menu navigasi, dan masih banyak yang lainnya. Selain itu, koleksi image atau foto yang kita miliki juga dapat ditampilkan dalam suatu galeri foto (image gallery) yang akan melengkapi isi dari website kita.
Masih terkait dengan image dan foto, dalam tutorial singkat ini, kita akan membahas mengenai bagaimana membuat galeri foto (image gallery) yang memiliki efek zoom (zooming effect) jika diklik pada salah satu foto. Kita akan menggunakan JQuery dan plugin Zoomooz untuk membuat efek zoom. Penasaran? Langsung aja kita mulai.
Step 1: Import Library Jquery dan Zoomooz.js
Pertama-tama, kita harus mendownload semua library yang diperlukan. Untuk JQuery dapat didownload di situs resminya, http://jquery.com dan untuk plugin Zoomooz dapat didownload di http://janne.aukia.com/zoomooz/. Setelah didownload dan diekstrak, pastikan bahwa kita mengetahui letaknya.
Import library JQuery dan Zoomooz sebagai berikut:
Pada baris ke-1 potongan source di atas, diimport library JQuery versi 1.4.4. Sesuaikan dengan versi yang Anda gunakan. Sedangkan pada baris 2-5, kita mengimport beberapa file library yang diperlukan, termasuk library inti zoomooz.js.
Step 2: Persiapkan dan Tampilkan Foto / Image di halaman dengan HTML
Namanya galeri foto ya harus ada fotonya, kalo ga ada fotonya ya aneh toh… hehe. Foto atau image yang akan ditampilkan dapat berasal dari berbagai macam sumber. Antara lain dapat diambil dari kumpulan foto yang kita miliki sendiri, dapat juga diambil dari situs kumpulan foto yang banyak tersedia di internet seperti Flickr, Photobucket, Google Picasa dll. Dalam contoh tutorial ini, kita akan mengambil image / foto dari situs LoremPixum.com yang menyediakan ribuan image siap pakai secara gratis. Cukup dengan mengarahkan source image ke alamat dengan format http://lorempixum.com/600/600/ maka akan menghasilkan gambar secara random dengan ukuran 600 x 600 pixel. Kita juga dapat mengambil image dalam kategori tertentu yang sudah disediakan dengan format http://lorempixum.com/600/600/nature/.
Sementara itu, untuk menampilkan gambar, kita akan “bungkus” dalam sebuah list (un-ordered list). Kita juga membungkus list dalam suatu <div> dengan id “gallery” dan class “zoom”. Hal tersebut untuk mempermudah CSS dan JQuery mengatur tampilan maupun pengaturan. Berikut ini potongan program untuk menampilkan gambar:
Step 3: Percantik Galeri Foto dengan CSS
Tanpa peran CSS, tampilannya tentu masih kurang menarik. Terlihat cukup berantakan. Kita akan memberikan “tugas” kepada CSS untuk mengatur tampilan halaman secara umum seperti font, perataan dan sebagainya, lalu untuk mengatur tampilan image agar berjajar dalam sejumlah baris dan kolom. CSS juga yang akan mengatur ukuran halaman menjadi lebih kecil (thumbnail) dengan ukuran 100 x 100 pixel.
Berikut ini potongan program CSS yang kita gunakan:
- <style type="text/css">
- * {
- margin: 0;
- padding: 0;
- }
-
- /*Text Styles*/
-
- #headline {
- text-align: center;
- margin: 20px 0;
- }
-
- h1 {
- font-family: 'Arvo', Georgia, Times, serif;
- font-size: 50px;
- line-height: 65px;
- }
-
- p {
- font-family: 'PT Sans', Helvetica, Arial, sans-serif;
- font-size: 13px;
- line-height: 25px;
- }
- /*Gallery Styles*/
-
- #gallery {
- width: 720px;
- height: 370px;
- margin: 0 auto;
- padding: 10px;
- background: #383131;
- }
-
- /*List Styles*/
- ul {
- list-style-type: none;
- position: absolute;
- width: 720px;
- }
-
- #gallery ul li {
- float: left;
- margin: 10px;
- background: white;
- height: 100px;
- width: 100px;
- }
-
- #gallery ul li:hover {
- border: 3px solid white;
- margin: 7px;
- }
-
- #gallery ul li img{
- height: 100px;
- width: 100px;
- }
-
- </style>
Step 4: Terapkan Efek Zoom
Langkah terakhir sebelum kita lihat hasilnya adalah menerapkan efek zoom saat suatu image / foto diklik. Untuk melakukannya tidaklah sulit, karena cukup memanggil fungsi yang sudah didefinisikan oleh plugin JQuery, yaitu Zoomooz. Berikut ini potongan programnya.
- <script type="text/javascript">
- $(document).ready(function() {
- $(".zoom").click(function(evt) {
- evt.stopPropagation();
- $(this).zoomTo();
- });
- $(window).click(function(evt) {
- evt.stopPropagation();
- $("body").zoomTo();
- });
- $("body").zoomTo();
- });
- </script>
Untuk membuat suatu object memiliki efek perbesar (zoom) saat diklik, cukup dengan memanggil fungsi zoomTo(). Pada baris 3-6 terlihat selector class “zoom” akan menjadikan image dan area gallery memiliki efek zooming. Sementara itu, baris 7-11 akan menjadikan halaman secara keseluruhan juga memiliki efek zoom saat diklik.
Step 5: Coba dan Lihat hasilnya.
Terakhir, mari kita lihat dan coba hasilnya.
Demo dan Download
- Lihat demo program secara langsung disini.
- Download Program Lengkap (termasuk JQuery dan plugin Zoomooz)
- Download Tutorial Lengkap (PDF)
Referensi
- Situs Resmi JQuery, http://jquery.com
- Plugin Zoomooz.js, http://janne.aukia.com/zoomooz/
- Create an Awesome Zooming Web Page With jQuery, http://designshack.co.uk/?p=20521





nice tutorial. dulu sempet pakai jquery tapi buat hal yg simple2 aja
gak sampe advance.
btw cantik tuh pa(wanita yg ada di gambar) hehehe
haha2x, dasar bujangan… ga bisa liat cewek bening dikit.
)
Your blog is like a mirror…..
biasa gan ….. lagi kesepian mungkin ……
Tutorial yang menarik. Terima kasih. Btw, bicara soal gambar kita kudu hati-hati pasang gambar kalau ada iklan adsense-nya. Percaya atau tidak, gambar yang dipasang didekat iklan adsense bisa membuat akun adsense di-disable.
tHANKS y dah share Info n tutorial nya,greetings good luck always..
nice Post thx y dah share.wao Fhoto siapa tuh ckp bgt?
nice Post,Thanks Y dah share Tutorial n info…salam kenal
nice info and tutorial nya…sangt bermanfaat ku coba dlu ahh..salam kenal
makasih dah share Ilmu na..beermanfaat buat saya
wah hebat
tq pak…
thx Ilmu nya salam kenal good luck
tutorial yang bagus bro…bisa di coba nih..
keren banget nih….ijin bookmark gan….
Tanya bos.. pengaruh ma speed loading ga ya? tapi keren bos.. beneran nich..
thx
Thank you for your article, I feel that my life and find you how. Your blog is like a
mirror..
Waduh asyik juga tuh kalo bisa men zoom seperti tutorial yang diberikan, membuat tampilan image bener-2 sangat indah. terima kasih infonya, saya akan coba dengan petunjuk yang ada
Thx infonya Pak Bos.
Tks.
Kunjungan Persahabatan Bos.
Thx.
sippp mas… langsung coba ah…
thanks… sangat bermanfaat….. nice posting
pak terima kasih untuk tutorialnya , mampir ke webstore saya ya dukung UKM lokal sepatu wanita
Thank you for your article…
Agak Repot Juga bermain HTML Nya..
Tapi Tertarik Untuk Cobain nih.
Langsung Aja Ahhhh..
wah kereeen . .
visit blog ane jg ya sob http://desa-loyang.blogspot.com
banyak pengetahuan didalamnya.
jgn lupa komentar baliknya ya sob . .
makasih
Ilmu yang bermanfaat, trim
wkakakakaka, mantabs bro, keren banget.
mantap tips…
nice share bro
thank da bagi bagi ilmu
makasi, bermanfaat bgt buat tugas saya
mantabs.. tq infonya….
nice post.. tapi supaya yang zoom nya gmbarnya saja gmana gan? soalnya saya coba ternyata ng-zoom nya full. gmana ya? mohon di blas.. Terimakasih Sukses slalu.
Mungkin bisa, dengan memindahkan class “zoom” pada tag <img/>, jadi bukan di tag <li>. Kalo ga bisa, alternatifnya bisa pake plugin yang khusus untuk zoom image, coba berkunjung ke http://www.tutorialchip.com/jquery/15-useful-jquery-image-zoom-plugins/
wow, that’s so cool
Do you have an idea to run this zoom in IE 7 and 8.
This issue is stucking me and in situation to give up the zoomer.
I would appreciate your help and suggestion.
Thanks
Great post! Mantap banget, sobat. Akan kupraktekkan di toko online http://bonekaelok.blogspot.com. Mohon izin untuk rewrite menjadi http://website-download.blogspot.com/2012/03/jquery-zoomooz-creating-zoom-effect-on.html Teruslah membuat post bermanfaat.
Keren…mantap abis
tenong,,,,
nanya donk boss..
gw lg belajar nie cara buat zooming image tp ngambil image nya dari database gmana y?? Thank’s
image umumnya tidak disimpan di db, tapi tetap disimpan di suatu folder di server. yang disimpan di db adalah path/nama file imagenya. bagaimana menampilkannya? ya tinggal ambil path/nama file dari db, lalu tampilkan di web dengan tag![]()
nice info bro… thanks
terima kasih semoga bisa berarti tutorialnya
kalau kita panggil nama fotonya dari database bisa gak pak? misal kita tampilkan fotonya di panggil pake :
“while($foto=mysql_fetch_array($sql)){
$gambar = $foto["nama_foto"];
echo ”
”
}”