M
This is a great approach. It's the only one I've tried that's actually worked. I just wanted to add one thing. For mobile bf cache, I added a pageshow event listener to the deferred section of script so that the preference would persist. Without it, it wasn't — at least on Android Chrome and Firefox. Thanks again for the awesome tutorial!