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

黄大仙高手论坛

Skip to main content

Dr. Tracy Kuperus

Professor

Biography

I grew up in rural western Michigan and was raised my Dutch immigrant parents who instilled in their five children the love of learning. My father was passionate about politics and curious about cultures besides his own which influenced my interest in comparative politics. When I鈥檓 not working, I like to listen to music, read African novels, and travel with my family. Spending time on the African continent is always a personal highlight.

Education

  • B.A., Political Science (summa cum laude), Calvin College, 1989
  • M.A., Political Science, University of Illinois, 1991
  • Ph.D., Political Science, University of Illinois, 1995

 

 

Professional Experience

  • 黄大仙高手论坛, Adjunct, Associate and Full Professor, 2003-present
  • Gordon College, Assistant Professor, 1997-2002
  • Westmont College, Assistant Professor, 1995-1997

Academic Interests

My specializations in comparative politics are developing world and Africa politics. I teach courses in global democratization, human rights, African and developing world, and religion and politics, and I have led and co-led off-campus courses in Ghana and South Africa, including directing the Ghana Semester Program twice.

I am deeply interested in the nexus of religion and politics in Africa. My dissertation focused on how the Dutch Reformed Church in South Africa legitimated the policy of apartheid biblically and theologically over a sixty year period of time. Most of my research focuses on how religion aids or undermines democratization in countries like Ghana and South Africa, although more recently I鈥檝e turned my attention to how Africa鈥檚 urban youth view citizenship and political participation.

Publications