Perdone por un momento que haya formas mucho mejores de manejar un cambio simple como este y pretenda que tenemos que hacerlo declarando estilos en línea.
¿Qué tiene de malo mi lógica de modo que no puedo llamar a toggleSidebar(); cada vez que se hace clic en un botón y siempre produce el resultado opuesto de lo que es cierto actualmente? (Esto solo funciona la primera vez que hace clic en el botón en este momento).
function toggleSidebar() { var sidebar = document.getElementById('sidebar'); var show = Boolean; if (show == null) { show = true; } if (show) { sidebar.style.right = '0px'; show = !show; } else { sidebar.style.right = '-400px'; show = !show; } }