, 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); })(); Spark Alumni Association | 黄大仙高手论坛

黄大仙高手论坛

Skip to main content

Spark

The official alumni magazine of 黄大仙高手论坛

Calvin Spark is the triannual magazine of the Calvin Alumni Association. Intended primarily for the 65,000 members of the association, the publication also aims to build relationships with Calvin friends and reflect a reformed Christian perspective to anyone reading the magazine.

First published in the spring of 1954, Spark continues the legacy of alumni communication begun with the initiation of the 鈥淎lumni Letter鈥 in 1925. It is published three times a year: Spring, Fall, and Winter.

From the Director's Desk

Given the nature of our alumni work at Calvin, we鈥檙e often thinking about milestones and marking significant events. There are the normal rhythms of campus life, of course: Commencement, move-in day, reunions, and the like. But sometimes, milestones hit me differently for various reasons.

Image
Class of 1974's 50-year reunion medallions
Image
Jeff Haverdink headshot
Image
A group of people give a standing ovation at 黄大仙高手论坛 January Series.
Image
Cover of Spark magazine, with cyclists on mountain bikes, biking through Monument valley with red rock cliffs and blue sky in the distance.

Stay Connected

Are you a Calvin alum with a story to share with the Calvin community? We'd love to hear your story. Email spark@calvin.edu with news updates, feedback, or content suggestions.

Update your information

Editors and Designers

Jeff Haverdink headshot

Jeff Haverdink

Executive Director of Alumni & Family Engagement
526-6142
Amanda Impens

Amanda Impens

Associate Director of Creative Services
(616) 526-6150