1(function($) { 2 3Galleria.addTheme({ 4 name: 'classic', 5 author: 'Galleria', 6 defaults: { 7 transition: 'slide', 8 thumbCrop: 'height', 9 10 // set this to false if you want to show the caption all the time: 11 _toggleInfo: true 12 }, 13 init: function(options) { 14 15 this.attachKeyboard({ 16 right: this.next, 17 left: this.prev 18 }); 19 20 21 // add some elements 22 this.addElement('info-link','info-close'); 23 this.append({ 24 'info' : ['info-link','info-close'] 25 }); 26 27 // cache some stuff 28 var info = this.$('info-link,info-close,info-text'), 29 touch = Galleria.TOUCH, 30 click = touch ? 'touchstart' : 'click'; 31 32 // show loader & counter with opacity 33 this.$('loader,counter').show().css('opacity', 0.4); 34 35 // some stuff for non-touch browsers 36 if (! touch ) { 37 this.addIdleState( this.get('image-nav-left'), { left:-50 }); 38 this.addIdleState( this.get('image-nav-right'), { right:-50 }); 39 this.addIdleState( this.get('counter'), { opacity:0 }); 40 } 41 42 // toggle info 43 if ( options._toggleInfo === true ) { 44 info.bind( click, function() { 45 info.toggle(); 46 }); 47 } else { 48 info.show(); 49 this.$('info-link, info-close').hide(); 50 } 51 52 // bind some stuff 53 this.bind('thumbnail', function(e) { 54 55 if (! touch ) { 56 // fade thumbnails 57 $(e.thumbTarget).css('opacity', 0.6).parent().hover(function() { 58 $(this).not('.active').children().stop().fadeTo(100, 1); 59 }, function() { 60 $(this).not('.active').children().stop().fadeTo(400, 0.6); 61 }); 62 63 if ( e.index === this.getIndex() ) { 64 $(e.thumbTarget).css('opacity',1); 65 } 66 } else { 67 $(e.thumbTarget).css('opacity', this.getIndex() ? 1 : 0.6); 68 } 69 }); 70 71 this.bind('loadstart', function(e) { 72 if (!e.cached) { 73 this.$('loader').show().fadeTo(200, 0.4); 74 } 75 76 this.$('info').toggle( this.hasInfo() ); 77 78 $(e.thumbTarget).css('opacity',1).parent().siblings().children().css('opacity', 0.6); 79 }); 80 81 this.bind('loadfinish', function(e) { 82 this.$('loader').fadeOut(200); 83 }); 84 } 85}); 86 87}(jQuery));
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.