1'use strict'; 2 3(function( $ ) { 4 5$( document ).ready(function() { 6 7 // direction detection 8 9 var getHoverDir = function( $element, x, y ) { 10 var w = $element.width(), 11 h = $element.height(), 12 x = ( x - $element.offset().left - ( w/2 )) * ( w > h ? ( h/w ) : 1 ), 13 y = ( y - $element.offset().top - ( h/2 )) * ( h > w ? ( w/h ) : 1 ), 14 direction = Math.round( ( ( ( Math.atan2(y, x) * (180 / Math.PI) ) + 180 ) / 90 ) + 3 ) % 4; 15 return direction; 16 } 17 18 var boldthemes_selected_gridItemEnter; 19 var boldthemes_selected_gridItemLeave; 20 21 22 function initTilesGridHover () { 23 24 $( '.btPageWrap' ).on( 'mouseenter', '.bpgPhoto', function( event ) { 25 boldthemes_selected_gridItemEnter = $( this ); 26 boldthemes_selected_gridItemEnter.removeClass( "in-top in-left in-right in-bottom out-top out-left out-right out-bottom" ) ; 27 var dir = getHoverDir( $( this ), event.pageX, event.pageY ); 28 boldthemes_selected_gridItemEnter.css({transition: 'none;'}); 29 if ( typeof boldthemes_selected_gridItemEnter !== 'undefined' ) { 30 switch(dir) { 31 case 0: 32 boldthemes_selected_gridItemEnter.addClass('in-top'); 33 break; 34 case 1: 35 boldthemes_selected_gridItemEnter.addClass('in-right'); 36 break; 37 case 2: 38 boldthemes_selected_gridItemEnter.addClass('in-bottom'); 39 break; 40 case 3: 41 boldthemes_selected_gridItemEnter.addClass('in-left'); 42 break; 43 default: 44 boldthemes_selected_gridItemEnter.addClass('in-top'); 45 break; 46 } 47 } 48 }); 49 50 $( '.btPageWrap' ).on( 'mouseleave', '.bpgPhoto', function( event ) { 51 boldthemes_selected_gridItemLeave = $( this ); 52 var dir = getHoverDir( $( this ), event.pageX, event.pageY ); 53 boldthemes_selected_gridItemLeave.removeClass( "in-top in-left in-right in-bottom out-top out-left out-right out-bottom" ); 54 if ( typeof boldthemes_selected_gridItemEnter !== 'undefined' ) { 55 switch(dir) { 56 case 0: 57 boldthemes_selected_gridItemEnter.addClass('out-top'); 58 break; 59 case 1: 60 boldthemes_selected_gridItemEnter.addClass('out-right'); 61 break; 62 case 2: 63 boldthemes_selected_gridItemEnter.addClass('out-bottom'); 64 break; 65 case 3: 66 boldthemes_selected_gridItemEnter.addClass('out-left'); 67 break; 68 default: 69 boldthemes_selected_gridItemEnter.addClass('out-top'); 70 break; 71 } 72 } 73 }); 74 75 } 76 77 function initTilesGridHoverOld () { 78 79 $( '.btPageWrap' ).on( 'mouseenter', '.bpgPhoto', function( event ) { 80 81 $( '.bpgPhoto' ).removeClass( 'selectedGridItem' ); 82 boldthemes_selected_gridItemEnter = $( this ); 83 dir = getHoverDir( $( this ), event.pageX, event.pageY ); 84 boldthemes_selected_gridItemEnter.find( '.captionPane' ).css({transition: 'none;'}); 85 86 switch(dir) { 87 case 0: 88 boldthemes_selected_gridItemEnter.find( '.captionPane' ).css({ 89 transition: 'none', 90 transform: 'translateY(-100%) translateX(0)', 91 MozTransform: 'translateY(-100%) translateX(0)', 92 WebkitTransform: 'translateY(-100%) translateX(0)', 93 msTransform: 'translateY(-100%) translateX(0)' 94 }); 95 break; 96 case 1: 97 boldthemes_selected_gridItemEnter.find( '.captionPane' ).css({ 98 transition: 'none', 99 transform: 'translateX(100%) translateY(0)', 100 MozTransform: 'translateX(100%) translateY(0)', 101 WebkitTransform: 'translateX(100%) translateY(0)', 102 msTransform: 'translateX(100%) translateY(0)' 103 }); 104 break; 105 case 2: 106 boldthemes_selected_gridItemEnter.find( '.captionPane' ).css({ 107 transition: 'none', 108 transform: 'translateY(100%) translateX(0)', 109 MozTransform: 'translateY(100%) translateX(0)', 110 WebkitTransform: 'translateY(100%) translateX(0)', 111 msTransform: 'translateY(100%) translateX(0)' 112 }); 113 break; 114 case 3: 115 boldthemes_selected_gridItemEnter.find( '.captionPane' ).css({ 116 transition: 'none', 117 transform: 'translateX(-100%) translateY(0)', 118 MozTransform: 'translateX(-100%) translateY(0)', 119 WebkitTransform: 'translateX(-100%) translateY(0)', 120 msTransform: 'translateX(-100%) translateY(0)' 121 }); 122 break; 123 default: 124 break; 125 } 126 127 boldthemes_selected_gridItemEnter.addClass( 'selectedGridItem' ); 128 129 setTimeout(function() { 130 boldthemes_selected_gridItemEnter.find( '.captionPane' ).css({ 131 transition: 'all 300ms ease', 132 transform: 'translateX(0) translateY(0)', 133 MozTransform: 'translateX(0) translateY(0)', 134 WebkitTransform: 'translateX(0) translateY(0)', 135 msTransform: 'translateX(0) translateY(0)' 136 }); 137 }, 20 ); 138 139 }); 140 141 $( '.btPageWrap' ).on( 'mouseleave', '.bpgPhoto', function( event ) { 142 boldthemes_selected_gridItemLeave = $( this ); 143 dir = getHoverDir( $( this ), event.pageX, event.pageY ); 144 $( '.bpgPhoto' ).removeClass( 'selectedGridItem' ); 145 switch(dir) { 146 case 0: 147 boldthemes_selected_gridItemLeave.find( '.captionPane' ).css({ 148 transform: 'translateY(-100%) translateX(0)', 149 MozTransform: 'translateY(-100%) translateX(0)', 150 WebkitTransform: 'translateY(-100%) translateX(0)', 151 msTransform: 'translateY(-100%) translateX(0)' 152 }); 153 break; 154 case 1: 155 boldthemes_selected_gridItemLeave.find( '.captionPane' ).css({ 156 transform: 'translateX(100%) translateY(0)', 157 MozTransform: 'translateX(100%) translateY(0)', 158 WebkitTransform: 'translateX(100%) translateY(0)', 159 msTransform: 'translateX(100%) translateY(0)' 160 }); 161 break; 162 case 2: 163 boldthemes_selected_gridItemLeave.find( '.captionPane' ).css({ 164 transform: 'translateY(100%) translateX(0)', 165 MozTransform: 'translateY(100%) translateX(0)', 166 WebkitTransform: 'translateY(100%) translateX(0)', 167 msTransform: 'translateY(100%) translateX(0)' 168 }); 169 break; 170 case 3: 171 boldthemes_selected_gridItemLeave.find( '.captionPane' ).css({ 172 transform: 'translateX(-100%) translateY(0)', 173 MozTransform: 'translateX(-100%) translateY(0)', 174 WebkitTransform: 'translateX(-100%) translateY(0)', 175 msTransform: 'translateX(-100%) translateY(0)' 176 }); 177 break; 178 default: 179 boldthemes_selected_gridItemLeave.find( '.captionPane' ).css({transform: 'translateY(-100%)'}); 180 break; 181 } 182 183 }); 184 185 } 186 187 188 189 initTilesGridHover (); 190 191 192 193}); 194 195})( 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.