, 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); })(); Institutional Architecture of the Postwar International Security Order: Global Security Governance in a Changing World | 黄大仙高手论坛

黄大仙高手论坛

Skip to main content

Institutional Architecture of the Postwar International Security Order: Global Security Governance in a Changing World

Since the close of World War II, states have undertaken efforts to shape the institutional architecture of the postwar international security order by proposing to build and/or to rebuild institutions and associated institutional entities and agents pertaining to global security issues.

In seeking to explain variation in observed institutional design, Prof. Westra has involved undergraduate student research assistants in a multiyear research project collecting and analyzing both qualitative and quantitative data.听

Summer 2012: James Randall (McGregor program)

Fall 2012: Alexander Tyan (Honors project/CSR)

Summer 2013: Greg Kim (McGregor program)

Summer 2014: Jisoo Kim (McGregor program)

Summer 2015: Ha Young Bahng (McGregor program)

Fall 2015: Abuoma Nwadike (Honors project); Seung Yong Lee (CSR)

Summer 2016: Isaac LaGrand (McGregor program)

Spring 2017: Edgar Aguilar (Alumni Grant)

Summer 2017: Matt Seafield (McGregor program)

Summer 2018: Kelly Looman (Honors project/McGregor program); Daniela Pereira (Honors project/McGregor program)


Student researchers

Kelly Looman (Honors Project/McGregor Program); Daniela Pereira (Honors Project/McGregor Program);

Funded by

McGregor Program






Departments