May I ask you a question about accessible_hamburger?
I am writing CSS for a hamburger menu that is valid for Google Accelerated Mobile Pages (AMP). Here is my JS Fiddle.
https://jsfiddle.net/jaygray/eu3r5qdk/2/
AMP does not allow the CSS 'input' and 'label' elements. Therefore your earlier effort:
http://www.scottohara.me/article/morph-button-updated.html
won't work with Google AMP.
However, this version has promise:
https://github.com/scottaohara/accessible_hamburger
as it does not use those CSS elements.
As you can see in my JS Fiddle, I have not been able to trigger the links and open the URLs. Using 'accessible hamburger' I am able to. And my JS Fiddle is a valid AMP document.
Google AMP does not allow JavaScript (except the AMP JavaScript). So this declaration:
<html amp lang="en" class="no-js">
must be:
<html amp lang="en">
And there may be other small changes so that accessible_hamburger works correctly for AMP.
Would you be willing to help me modify my CSS-only hamburger menu approach based on accessible_hamburger? I can help you negotiate AMP (I have written AMP valid HTML and can short-cut your learning curve). You then could present an AMP-valid structure. In return, I would have a solution for my applications.
Let me know if you have the time and interest to do this.
/jay