, but this code // executes before the first paint, when

黄大仙高手论坛

is not yet present. The // classes are added to so styling immediately reflects the current // toolbar state. The classes are removed after the toolbar completes // initialization. const classesToAdd = ['toolbar-loading', 'toolbar-anti-flicker']; if (toolbarState) { const { orientation, hasActiveTab, isFixed, activeTray, activeTabId, isOriented, userButtonMinWidth } = toolbarState; classesToAdd.push( orientation ? `toolbar-` + orientation + `` : 'toolbar-horizontal', ); if (hasActiveTab !== false) { classesToAdd.push('toolbar-tray-open'); } if (isFixed) { classesToAdd.push('toolbar-fixed'); } if (isOriented) { classesToAdd.push('toolbar-oriented'); } if (activeTray) { // These styles are added so the active tab/tray styles are present // immediately instead of "flickering" on as the toolbar initializes. In // instances where a tray is lazy loaded, these styles facilitate the // lazy loaded tray appearing gracefully and without reflow. const styleContent = ` .toolbar-loading #` + activeTabId + ` { background-image: linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%); } .toolbar-loading #` + activeTabId + `-tray { display: block; box-shadow: -1px 0 5px 2px rgb(0 0 0 / 33%); border-right: 1px solid #aaa; background-color: #f5f5f5; z-index: 0; } .toolbar-loading.toolbar-vertical.toolbar-tray-open #` + activeTabId + `-tray { width: 15rem; height: 100vh; } .toolbar-loading.toolbar-horizontal :not(#` + activeTray + `) > .toolbar-lining {opacity: 0}`; const style = document.createElement('style'); style.textContent = styleContent; style.setAttribute('data-toolbar-anti-flicker-loading', true); document.querySelector('head').appendChild(style); if (userButtonMinWidth) { const userButtonStyle = document.createElement('style'); userButtonStyle.textContent = `#toolbar-item-user {min-width: ` + userButtonMinWidth +`px;}` document.querySelector('head').appendChild(userButtonStyle); } } } document.querySelector('html').classList.add(...classesToAdd); })(); Contact Us Alumni Association | 黄大仙高手论坛

黄大仙高手论坛

Skip to main content

Contact Us

We鈥檙e here to help! Please contact us if you have any questions or concerns about the university or alumni life.

Alumni Office

Primary contact

Mailing address

Calvin Alumni Office
3201 Burton St SE
Grand Rapids, MI 49546

Visiting address

  • Raybrook Office | Map
  • 2041 Raybrook Ave SE
  • Grand Rapids, MI 49546

Keep us posted

Alumni Engagement Staff

Jeff Haverdink headshot

Jeff Haverdink

Executive Director of Alumni & Family Engagement
526-6142
Stephanie Cooper headshot 2

Stephanie Cooper

Associate Director of Family & Student Engagement
526-6969
Ashley_Naghtin

Ashley Mann

Associate Director of Alumni Engagement
526-6125
HY-Portrait-photography-2023-0102-10092023

Susan Buist

Alumni Programs Coordinator
526-8520
Mary Gabrielse

Mary Gabrielse

Department Assistant
526-6431
Hannah Patterson

Hannah Patterson

Programming and Communications Coordinator
526-6625
Heidi DeBlecourt headshot

Heidi DeBlecourt

150th Anniversary Program Director