According to this article screen sizes available in javascript vary wildly based on strange factors like the doctype being used and certain variables available in mobile browsers.
...But that article is from 2011. Do all these idiosyncrasies still apply today?