Well I requested this forum and had a specific question in mind but I found the fix. I might as well post problem and solution.
The site I'm working on had problem on the iPad, and that was when it reorients from portrait to landscape the viewport was zoomed. The page was designed to fit nicely unzoomed in either portrait or landscape but a reorientation caused it to zoom. The size of the viewport as queried ($(window).width () reports the size of the physical viewport (980px x 644px) but the page was enlarged within it.
The thing that caused this seems to be this:
<meta name = "viewport" content = "initial-scale = 1.0">
so removing that fixed the problem. I think that line was inherited from HTML5 Boilerplate, which I don't think was really tested hard against an iPad.