Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;(function($) {
- 'use strict';
- var $currNr = 0;
- var $links, $images;
- /**
- * Function to prevent closures; adds click event handler to links
- */
- var addEvents = function(nr){
- $links.eq(nr).on("click",function(e){
- showImage(nr);
- e.preventDefault();
- });
- }
- /**
- * Function to show an image
- */
- var showImage = function(nr){
- //find image
- var $img = $images.get(nr);
- if(!$img) return;
- //find big image
- var $photoBig = $('#photoBig');
- //change
- $photoBig.attr('src') = $img.attr('data-src-l');
- $photoBig.attr('alt') = $img.attr('alt');
- //remember current image number
- $currNr = nr;
- }
- /**
- * Function to show the next image
- */
- var showNextImage = function(){
- showImage($currNr + 1);
- };
- /**
- * Function to show the previous image
- */
- var showPrevImage = function(){
- showImage($currNr - 1);
- }
- //start scripts
- $(document).ready(function(){
- //find images and links
- $links = $("#thumbsmenu li>a");
- $images = $("#thumsmenu li>a img");
- //add links events
- for(var i = 0; i < $links.length; i++){
- addEvents(i);
- }
- // controls
- $('#lnkFirst').on("click",function(e){
- showImage(0);
- e.preventDefault();
- });
- $('lnkPrev').on("click",function(e){
- showPrevImage();
- e.preventDefault();
- });
- $('#lnkNext').on("click",function(e){
- showNextImage();
- e.preventDefault();
- });
- $('#lnkLast').on("click",function(e){
- showImage($images.length - 1);
- e.preventDefault();
- })
- // keyboard
- $(document).keydown(function(e){
- var $code = (e.keyCode ? e.keyCode : e.which);
- switch($code){
- case 37: showPrevImage(); e.preventDefault(); break;
- case 39: showNextImage(); e.preventDefault(); break;
- }
- });
- // play
- var $timer
- $('#btnPlay').on("click",function(e){
- if(this.value == 'start'){
- this.value = 'stop';
- $currNr = 0;
- $timer = setInterval(showNextImage, 1000);
- } else {
- this.value = 'start';
- clearInterval($timer);
- }
- });
- });
- })(jQuery);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement