Note: this demo is a work in progress. It's ugly and is only intended to show the most basic functionality of this technique
Instead of Off Canvas, what about OnCanvas? Sliding menus with no DOM acrobatics! Semantic markup, light JavaScript, highly flexible.
View and edit it live on Codepen.