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

黄大仙高手论坛

Skip to main content

Ms. Haijin Choi

Private Lesson Instructor(Violin)

Biography

Haijin Choi is a section violinist of Grand Rapids Symphony and an enthusiastic violin teacher. Originally from South Korea, she moved to the United States in 2000 to continue her post-graduate education at Northwestern University in Chicago after 铿乶ishing her bachelor鈥檚 and master鈥檚 degrees in music from Seoul National University.

Inspired by her teacher and mentor Blair Milton, Ms. Choi continued her interest in orchestral music by participating in National Repertoire Orchestra and Civic Orchestra of Chicago. While playing with Charleston Symphony Orchestra in South Carolina during the 2002 鈥 2003 season, she performed a recital for Piccolo Spoleto Festival.

Ms. Choi has been a member of Grand Rapids Symphony since 2003. Besides performing recitals, she enjoys opportunities to help young violinists as well as to play chamber music, including with the Chamber Music Festival of Saugatuck, and for house concerts in the West Michigan area.

Education

  • M.M. and Certificate Program, Northwestern University
  • M.M., Seoul National University
  • B.M., Seoul National University