1function onMagicTap(e) { 2 var mzObj = e.getTarget(), 3 tap = { 4 id: e.changedTouches[0].identifier, 5 ts: e.timeStamp, 6 x: e.changedTouches[0].clientX, 7 y: e.changedTouches[0].clientY 8 }, 9 tap0; 10 while ( mzObj && 'a' !== mzObj.tagName.toLowerCase() ) { 11 mzObj = mzObj.parentNode; 12 } 13 if (!mzObj) { 14 return; 15 } 16 17 if ( 'touchstart' == e.type ) { 18 mzObj.tap = tap; 19 } else if ( 'touchend' == e.type ) { 20 tap0 = mzObj.tap; 21 mzObj.tap = null; 22 if (!tap0) { 23 return; 24 }; 25 26 if (tap.id === tap0.id && tap.ts - tap0.ts <= 200 27 && Math.sqrt(Math.pow(tap.x-tap0.x,2) + Math.pow(tap.y-tap0.y,2)) <= 15 28 ) { 29 e.stop(); 30 if (mzObj.onclick) { 31 mzObj.onclick(); 32 }; 33 return; 34 } 35 } 36}
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.