The basic explanation is that alerts work on a system of checking whether or not you've read a watched thread (or a thread in a watched forum). In order to not flood you with alerts, you will only get one alert per thread until you check it and make the alert system see that you've read all the existing posts. It doesn't matter if you've checked the alert, or if you've seen the initial post you got the alert for, because all it cares about is whether or not you've seen every post in the thread.
What this means is that if you accidentally skip over an alert then you won't get another one. Also, if you check a thread you got an alert for but there were more posts on a later page that you did not view, then the system will still be seeing you as having received an alert but not read the thread yet. It's all about whether or not you've loaded up the last page of a thread.
So, if you're having a problem with not receiving alerts for specific watched threads, go open them up and go to the last page. You should get an alert for the next new post in the thread since the system will see that you don't have any unread posts left in there. If this doesn't fix your issue then head on over to the Help Desk and ask for help!