Return to Snippet

Revision: 55331
at February 2, 2012 22:52 by timothypwalter


Initial Code
<script>
 function BlockMove(event) {
  // Tell Safari not to move the window.
  event.preventDefault() ;
 }
</script>
 
<body ontouchmove="BlockMove(event);" >
  ...
</body>

Initial URL
http://matt.might.net/articles/how-to-native-iphone-ipad-apps-in-javascript/

Initial Description
If you a flick a web app past the bottom or top of the page, the page itself gets elastically tugged away from the URL bar or the button bar (or the bottom/top of the screen if it's in full-screen mode).

This behavior is another giveaway that your app isn't native, and it's rarely the behavior you want in a native app.

To stop this behavior, capture touchmove events on the document in JavaScript and cancel them. You can do this by adding a handler to the body tag, and invoking the preventDefault method on the event object:

Initial Title
Preventing elastic scrolling on iDevice

Initial Tags
iphone

Initial Language
JavaScript