responsive, improved switcher.js