views:

111

answers:

1

I have a split view controller-based iPad app that uses a Web View to load a jqTouch web app.

In portrait mode it looks fine, but in landscape mode (regardless of which orientation the app was launched in), the jqTouch page is wider than the viewport.

Is there a setting I can tweak (preferably via a call to stringByEvaluatingJavascriptFromString:) in the jqTouch view to get it to resize properly?

A: 

The problem boils down the fact that a UIWebView is not enough of a web browser for all of JQTouch's features to work as intended.

I ended up setting the height and width of the body to the height and width of the UIWebView thusly:

[self.webView stringByEvaluatingJavaScriptFromString:[NSString stringWithFormat:@"$('body').width(%f);$('body').children('div').not('.floaty').height(%f)", self.webView.frame.size.width, self.webView.frame.size.height]];

This is basically due to the fact that onresize doesn't get triggered, nor does onorientationchange. There may be cleaner ways of handling this by directly triggering those events.

Frank Schmitt