PageSourceSearch

https://vintageacquisitions.com/wp-content/themes/scape/library/js/module-pageheader.js?ver=1.0

js vintageacquisitions.com collected 2026-10-04 13:57:20 UTC 4,495 bytes, 149 lines download raw bytes

1(function() {
2	"use strict";
3	window.SCAPE = window.SCAPE || {};
4	var $ = jQuery.noConflict();
5
6	SCAPE.pageHeader = {
7
8		init: function() {
9			SCAPE.pageHeader.layout();
10			SCAPE.pageHeader.fullScroll();
11			SCAPE.pageHeader.scrollEffect();
12
13			$(window).on('resize', function(){
14				SCAPE.waitForFinalEvent( function() {
15					SCAPE.pageHeader.layout();
16				}, 500, 'page_header');
17			});
18		},
19
20		layout: function() {
21		},
22
23		scrollEffect: function() {
24
25			if ( $('#page-header').hasClass('has-scroll-effect') && !SCAPE.isMobile() ) {
26
27				var $page_header	= $('#page-header'),
28					$page_header_i	= $page_header.find('.page-header-inner'),
29					$bg_cont		= $page_header.find('.page-header-image'),
30					$bg_wrapper		= $page_header.find('.page-header-image-wrapper'),
31					$bg				= $page_header.find('.wtbx-bg-image'),
32					$bg_shadow		= $page_header.find('.page-header-shadow'),
33					$bg_overlay		= $page_header.find('.page-header-overlay'),
34					$page			= $('#page-wrap'),
35					header_height	= $page_header.outerHeight(),
36					bg_cont_height	= $bg_cont.height(),
37					bg_height		= $bg.height(),
38					bg_width		= $bg.width(),
39					height_diff		= (bg_height - bg_cont_height) / 2,
40					multiplier		= .4,
41					to_center_top	= bg_height / 2,
42					to_center_left	= bg_width / 2,
43					scale			= 1,
44					ratio			= 1.5,
45					$background;
46
47				if ( $page_header.hasClass('scroll-cont_zoom_in') && $page_header.has('.page-header-bg-wrapper') ) {
48					$background = $page_header.find('.page-header-bg-wrapper');
49					var background_h = SCAPE.viewport().height + Math.ceil(header_height / 1.5);
50					$background.css('height', background_h + 'px');
51				}
52
53				var onScroll = function() {
54
55					var scrollTop		= window.pageYOffset,
56						scrolled_part	= scrollTop / header_height;
57
58					if ( $page_header.hasClass('scroll-hs_3d_slide') ) {
59
60						scale = (1 - scrolled_part) * multiplier + 1;
61						var bg_scale = (1 - scrolled_part) * multiplier * .8 +  1 - multiplier * .8;
62
63						if ( scrollTop > header_height ) {
64							$bg_wrapper.css('transform', '');
65							$bg_shadow.css('transform', '');
66							$page_header_i.css('transform', '');
67						} else {
68							SCAPE.transform($('.page-header-bg-wrapper')[0], 'scale3d('+Math.sqrt(bg_scale)+','+Math.sqrt(bg_scale)+',1)');
69							SCAPE.transform($page_header_i[0], 'scale3d('+scale/(1+multiplier)+','+scale/(1+multiplier)+',1)');
70						}
71
72					} else if ( $page_header.hasClass('scroll-cont_zoom_in') ) {
73
74						scale = (scrolled_part * ratio) * multiplier * multiplier + 1 - multiplier * multiplier;
75						scale = Math.sqrt(Math.min(scale,1));
76
77						var transform = SCAPE.propertyPrefix('transform');
78
79						if ( scale === 1 ) {
80							$page.css('will-change', '');
81							$page.css('transform', '');
82							$page.css(transform, '');
83							$page.addClass('scrolled-into-view');
84						} else {
85							$page.css('will-change', transform);
86							$page.css(transform, 'scale3d('+scale+','+scale+',1)');
87							$page.removeClass('scrolled-into-view');
88						}
89					}
90				};
91
92				var raf = SCAPE.raf();
93
94				$(window).scroll(function() {
95					raf(onScroll);
96				});
97
98			}
99		},
100
101		fullScroll: function() {
102
103			var $page_header	= $('#page-header');
104			if ( $page_header.length ) {
105				var header_offset	= $page_header.offset().top,
106					header_height	= $page_header.height();
107
108				var slideOnScroll = function(e) {
109					e				= window.event || e;
110					var delta		= Math.max(-1, Math.min(1, (e.wheelDelta || -e.deltaY || -e.detail)));
111					var scrollTop	= SCAPE.scrollTop.get;
112					var $body		= $('body');
113					var $page		= $('#page-wrap'),
114						offset		= $page.offset().top - SCAPE.headerOffset($page);
115
116					if ( delta < 0 && scrollTop < header_offset + offset - 100 ) {
117						// SCAPE.stopEvent(e);
118						if ( !$body.hasClass('scrolling') ) {
119							$body.addClass('scrolling');
120							$('html, body').animate({scrollTop: offset}, 800, function() {
121								$body.removeClass('scrolling');
122							});
123						}
124					} else if ( delta > 0 && scrollTop < header_offset + offset ) {
125						// SCAPE.stopEvent(e);
126						if ( !$body.hasClass('scrolling') ) {
127							$body.addClass('scrolling');
128							$('html, body').animate({scrollTop: 0}, 600, function() {
129								$body.removeClass('scrolling');
130							});
131						}
132					}
133					return false;
134				};
135
136				if ( $page_header.data('fullscroll') === 1 ) {
137					SCAPE.mouseWheelHandler.add(window, slideOnScroll);
138				}
139			}
140
141		}
142
143	};
144
145	jQuery(document).ready(function($) {
146		SCAPE.pageHeader.init();
147	});
148
149})(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.