Jika blog atau website menampilkan gallery foto, seperti website Toko Online, maka setting image menjadi masalah besar. Ada sejumlah besar gambar berukuran Large, Medium atau Small yang jika tampil “apa adanya” tentu tidak efisien, kacau dan Loading Time sangat lambat, sehingga berpengaruh negatif terhadap search engine dan pengunjung pun akan pergi. Apa solusinya?
Efek Zoom Galeri Foto untuk website Toko Online
Bagaimana membuat galeri foto dengan zooming effect?
Step 1: Import Library Jquery dan Zoomooz.js
Download semua library (framework) yang diperlukan. Untuk JQuery download dari Official Site. Untuk plugin Zoomooz download dan Anda browsing saja di Google. Pasca download dan ekstrak, pastikan Anda mengetahui letaknya.
Import library JQuery dan Zoomooz sebagai berikut :
Lihar Tabel di bawah garis MERAH – pergi ke bagian bawah artikel ini (TABEL Snippet I)
Pada baris 1 snippet I, diimport library JQuery ver. 1.4.4 Sesuaikan dengan versi yang Anda gunakan. Pada baris 2-5, kita import beberapa file library yang diperlukan, termasuk library inti zoomooz.js.Step 2: Siapkan dan Tampilkan Gambar di halaman dengan HTML
Image bisa berasal dari album foto Anda, Flickr, Photobucket, Google Picasa etc. Kita akan mengambil foto dari http://lorempixel.com/ yang menyediakan ribuan image gratis siap pakai.
Cukup dengan mengarahkan source image ke alamat dengan format http://lorempixum.com/600/600/ maka akan dihasilkan gambar secara random dengan ukuran 600 x 600 pixel. Kita juga dapat mengambil image kategori tertentu, misalnya format ttp://lorempixum.com/600/600/nature/.
Untuk menampilkan image, kita “bungkus” dalam sebuah “ul” (un-ordered list). Kita juga membungkus “ul” dalam suatu <div> dengan id “gallery” dan class “zoom”. Hal tersebut untuk mempermudah CSS dan JQuery mengatur tampilan maupun pengaturan.
Berikut ini snippet (potongan) untuk menampilkan gambar :
Lihar Tabel di bawah garis BIRU – pergi ke bagian bawah artikel ini (TABEL Snippet II)
Step 3: Percantik Galeri Foto dengan CSS
Tanpa bantuan CSS, tampilan tentu berantakan. “Tugas” CSS adalah 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 digunakan :
Lihar Tabel di bawah garis HIJAU – pergi ke bagian bawah artikel ini (TABEL Snippet III)Step 4: Terapkan Efek Zoom
Langkah terakhir adalah menerapkan efek zoom saat suatu image foto diklik. Untuk melakukan tidak sulit, karena cukup memanggil fungsi yang sudah didefinisikan oleh plugin JQuery, yaitu Zoomooz.
Berikut ini snippet (potongan) programnya :Lihar Tabel di bawah garis ORANGE – pergi ke bagian bawah artikel ini (TABEL Snippet IV)
Untuk membuat object dikenai efek perbesar (zoom) saat klik, cukup dengan memanggil fungsi zoomTo(). Baris 3-6 terlihat selector class “zoom” akan menjadikan image dan area gallery kena efek zooming. Baris 7-11 akan menjadikan halaman secara keseluruhan juga memiliki efek zoom saat diklik.Step 5: Coba dan Lihat hasilnya.
Kita lihat hasilnya. Dibawah ini tampilan Awal Halaman Galeri Foto.
Tampilan Foto Saat Diklik (Zooming)
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
- Create an Awesome Zooming Web Page With jQuery, http://designshack.co.uk/?p=20521
- http://achmatim.net/2011/05/29/membuat-efek-zoom-pada-galeri-foto-dengan-jquery-zoomooz/
Code block Snippet I kelengkapan STEP 1 - Import library JQuery dan Zoomooz



- <script type="text/javascript" src="zoomooz/lib/jquery-1.4.4.js"></script>
- <script type="text/javascript" src="zoomooz/lib/sylvester.js"></script>
- <script type="text/javascript" src="zoomooz/js/purecssmatrix.js"></script>
- <script type="text/javascript" src="zoomooz/js/jquery.animtrans.js"></script>
- <script type="text/javascript" src="zoomooz/js/jquery.zoomooz.js"></script>
Code block Snippet II Kelengkapan STEP 2 - snippet untuk menampilkan gambar



- <div id="headline">
- <h1>Galeri Foto</h1>
- <p>Klik gambar untuk Perbesar foto dan klik di luar foto untuk memperkecil</p>
- </div>
- <div id="gallery" class="zoom">
- <ul>
- <liclass="zoom"><imgsrc="http://lorempixum.com/600/600/people/1"/></li>
- <liclass="zoom"><imgsrc="http://lorempixum.com/600/600/people/2"/></li>
- <li class="zoom"><img src="http://lorempixum.com/600/600/people/3"/></li>
- <li class="zoom"><img src="http://lorempixum.com/600/600/people/4"/></li>
- <li class="zoom"><img src="http://lorempixum.com/600/600/people/5"/></li>
- <liclass="zoom"><img src="http://lorempixum.com/600/600/people/6"/></li>
- <li class="zoom"><img src="http://lorempixum.com/600/600/people/7"/></li>
- <li class="zoom"><img src="http://lorempixum.com/600/600/people/8"/></li>
- <li class="zoom"><img src="http://lorempixum.com/600/600/people/9"/></li>
- <li class="zoom"><img src="http://lorempixum.com/600/600/people/10"/></li>
- <li class="zoom"><img src="http://lorempixum.com/600/600/nature/1"/></li>
- <li class="zoom"><img src="http://lorempixum.com/600/600/people/2"/></li>
- <li class="zoom"><img src="http://lorempixum.com/600/600/people/3"/></li>
- <li class="zoom"><img src="http://lorempixum.com/600/600/people/4"/></li>
- <li class="zoom"><img src="http://lorempixum.com/600/600/people/5"/></li>
- <li class="zoom"><img src="http://lorempixum.com/600/600/people/6"/></li>
- <li class="zoom"><img src="http://lorempixum.com/600/600/people/7"/></li>
- <li class="zoom"><img src="http://lorempixum.com/600/600/people/8"/></li>
- </ul>
- </div>
Code block Snippet III - Kelengkapan STEP 3 - Snippet CSS yang digunakan



- <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>
Code block TABEL IV – Kelengkapan STEP 4 - snippet program memanggil fungsi



- <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>