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