I had a lot of problems with front-end stuff as well. Turns out I didn't know Javascript well enough. Solved it by going through this course: http://watchandcode.com/p/practical-javascript
I've found the 'You Don't Know JS' series very helpful for understanding JS from the ground up. In book form or for free via !gh, https://github.com/getify/You-Dont-Know-JS.
You Don't Know JS has to be the best and most detailed book about JavaScript that exists. It might be a bit much for a beginner, so just skim it at first and come back when something doesn't make sense.
Nicolas Bevacqua's JavaScript Application Design: A Build First Approach isn't a bad place to start -- Manning has a few books on SPA design and development that are well-suited for experienced developers who are new to modern web front-end dev.