1var scrollbar = { 2 disable: function (classname, callback, duration) { 3 //Disable all scroll events 4 $(window).off("scroll", browser.scrollEvent); 5 //Pause all visibility speciftc events on page 6 browser.pauseAllIntensiveEvents(); 7 //Save scroll position 8 browser._position = $(window).scrollTop(); 9 //Fake it using position:fixed on .page 10 $('.site').css('top', (-1 * browser._position) + 'px').addClass('lock'); 11 //Set scroll postion to top of the window 12 $(window).scrollTop(0); 13 //Add classname 14 $('html').addClass(classname); 15 //Execute callback function 16 if (typeof callback != "undefined") { 17 if (typeof duration == "undefined") 18 duration = 500; 19 setTimeout(function () { 20 if ($.isFunction(callback)) { 21 callback(); 22 } 23 }, duration); 24 } 25 }, 26 enable: function (classname, callback, duration) { 27 //Check undefined 28 if (typeof duration == "undefined") 29 duration = 500; 30 //Remove classname 31 $('html').removeClass(classname); 32 setTimeout(function () { 33 //Remove faked position from .page 34 $('.site').removeClass('lock').css('top', 'auto'); 35 //Set the previous scroll position of page to browser 36 $(window).scrollTop(browser._position); 37 //Execute callback function 38 if ($.isFunction(callback)) { 39 callback(); 40 } 41 //Resume all paused events 42 browser.playVisibleEvents(); 43 //Set scroll postion index to zero 44 browser._position = 0; 45 //Enable all scroll events 46 $(window).scroll(browser.scrollEvent); 47 }, duration); 48 }, 49 touchListen: function () { 50 $(document).one('click touchstart', function closeOverlay(e) { 51 if ($('.overlay').has(e.target).length === 0) 52 scrollbar.enable('has-overlay'); 53 else 54 $(document).one('click touchstart', closeOverlay); 55 return false; 56 }); 57 } 58};
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.