$('.bottom-close-link').on('click', function (e) { $.scrollTo( $(e.target).closest('.expandable'), { duration: 250, offset: -30 }); })
_.delay(function () { var $menuItem = this.$('.unlocked.menu-item:not(.nth-child-1)').last(), navigationHeight = $('.location-menu .navigation').height(); if($menuItem.length) { $.scrollTo($menuItem, 300, { offset: -(navigationHeight + 4)}); } }, 300);
scrollToElement(container) { if (location.hash) { const offset = 0 - ($('.navbar-gitlab').outerHeight() + $('.js-tabs-affix').outerHeight()); const $el = $(`${container} ${location.hash}:not(.match)`); if ($el.length) { $.scrollTo($el[0], { offset }); } } }
$WRAPPER.on( 'click', '.explain_tabs .tab-list', function( event ) { var $selectedTab = $(this); var explainerType = $selectedTab.find('[data-target]').data('target'); filterExplainers($selectedTab, explainerType); $.scrollTo( $TABS, { duration: 200, offset: -30 }); });
$(document).on('click', 'a[href^="#"]', function() { let hash = $(this).attr('href'); updateTab(hash); $(window).off('hashchange', hashchange); location.hash = hash; $(window).on('hashchange', hashchange); let target = $('*[name="' + decodeURI(hash.substring(1)) + '"]'); if (target.length > 0) { $.scrollTo(target); } return false; });
function openAndScrollToExpandable ($targetExpandable) { // If there's an expandable open above the targeted expandable, // it will be closed when this expandable opens, so we need // to subtract its height from this expandable's offset in order // to get a position to use in scrolling this expandable into view var prevExpanded = $targetExpandable.prevAll('.expandable__expanded'); var offset = 0; if (prevExpanded.length) { offset = $(prevExpanded[0]).find('.expandable_content').height(); } var pos = $targetExpandable.offset().top - offset; $.scrollTo( pos, { duration: 200, offset: -30 }); $targetExpandable.find('.expandable_target').click(); }
// TODO: Investigate consolidating this with jumpToAnchorLink in process.js. function jumpToAnchorLink() { // check for hash value - hash is first priority var hash = window.location.hash.substr( 1 ).toLowerCase(); var re = /^[a-zA-Z\-0-9]*$/; // Only allow letters, digits and - symbols in hashes. if ( !re.test( hash ) ) { return; } var $el = $( '#' + hash ); var $expandable = $el.closest( '.expandable' ); if ( hash !== '' && $expandable.length && !$expandable.hasClass( 'expandable__expanded' ) ) { $expandable.find( '.expandable_target' )[0].click(); $.scrollTo( $el, { duration: 600, offset: -30 } ); } }
LineHighlighter.prototype.highlightHash = function(newHash) { let range; if (newHash && typeof newHash === 'string') this._hash = newHash; this.clearHighlight(); if (this._hash !== '') { range = this.hashToRange(this._hash); if (range[0]) { this.highlightRange(range); const lineSelector = `#L${range[0]}`; const scrollOptions = { // Scroll to the first highlighted line on initial load // Offset -50 for the sticky top bar, and another -100 for some context offset: -150, }; if (this.options.scrollFileHolder) { $(this.options.fileHolderSelector).scrollTo(lineSelector, scrollOptions); } else { $.scrollTo(lineSelector, scrollOptions); } } } };
function loadPage (lastPage, pageNum) { formExplainer.currentPage = pageNum; $('.form-explainer_page-link').removeClass('current-page'); $('.form-explainer_page-link[data-page=' + pageNum + ']').addClass('current-page'); // Scroll the window up to the tabs. $.scrollTo( $('.explain_pagination'), { duration: 600, offset: -30 }); // After scrolling the window, fade out the current page. var fadeOutTimeout = window.setTimeout(function () { formExplainer.getPageEl(lastPage).fadeOut( 450 ); window.clearTimeout( fadeOutTimeout ); }, 600); // After fading out the current page, fade in the new page. var fadeInTimeout = window.setTimeout(function () { formExplainer.getPageEl(pageNum).fadeIn( 700 ); stickyHack(); window.clearTimeout( fadeInTimeout ); if (resized ) { formExplainer.setupImage(pageNum); } // update paging buttons if (formExplainer.pageCount > 1) { $('.form-explainer_page-buttons button').removeClass('btn__disabled'); if (pageNum === 1) { $('.form-explainer_page-buttons .prev').addClass('btn__disabled'); } else if (pageNum === formExplainer.pageCount) { $('.form-explainer_page-buttons .next').addClass('btn__disabled'); } } }, 1050); }
element.on('click', function () { $.scrollTo(attrs.scrollTo, settings); });
scrollTo(zen_area) { return $.scrollTo(zen_area, 0, { offset: -150 }); }
function scroll(e) { e.preventDefault(); $('body').removeClass('menu'); var target = $(this).attr('href'); $.scrollTo(target,500) }