<h1 id="mobile">Mobile</h1>
<p><strong>Context: <a href="../README.md">frontend-dev-bookmarks</a> / Compatibility</strong></p>
<p>Development of websites optimized for viewing on smartphone and tablet devices.</p>
<p><a href="http://frontend.directory/"><img src="https://img.shields.io/badge/frontend-directory-blue.svg?style=flat-square" alt="frontend.directory" /></a> <a href="https://gitter.im/dypsilon/frontend-dev-bookmarks"><img src="https://img.shields.io/gitter/room/dypsilon/frontend-dev-bookmarks.svg?style=flat-square&maxAge=2592000" alt="Gitter" /></a> <a href="https://twitter.com/FrontendDir"><img src="https://img.shields.io/badge/follow-twitter-55acee.svg?style=flat-square" alt="Twitter" /></a></p>
<table style="width:58%;">
<colgroup>
<col style="width: 58%" />
</colgroup>
<tbody>
<tr class="odd">
<td>+ <strong>Emulation</strong>: Tools for emulating features of mobile devices on a desktop. + <strong><a href="http://www.responsinator.com/">Responsinator</a></strong>: Quickly test any website in popular resolutions. + <strong><a href="https://developers.google.com/web/tools/chrome-devtools/iterate/device-mode/?hl=en">Simulate Mobile Devices with Chrome Developer Tools</a></strong>: Use Chrome DevTools’ Device Mode to build mobile-first, fully responsive web sites. Learn how to use it to simulate a wide range of devices and their capabilities. + <strong><a href="https://github.com/davidcalhoun/touche">Touché</a></strong>: Touché: bringing touch events to non-touch browsers (how touching!). No dependencies. No code bloat. + <strong><a href="http://mwbrooks.github.io/thumbs.js/">thumbs.js</a></strong>: Adds touch support to your browser. + <strong>Gestures</strong>: Resources for working with touch mechanics (what your fingers do on the screen) and touch activities (results of specific gestures). + <strong><a href="http://hammerjs.github.io/">Hammer.js</a></strong>: Hammer helps you add support for touch gestures to your page, and remove the 300ms delay from clicks. + <strong><a href="https://www.google.com/design/spec/patterns/gestures.html">Introduction to Gestures</a></strong>: Descriptions of different gestures an their meanings. + <strong><a href="https://github.com/jquery/PEP">Pointer Events Polyfill</a></strong>: PEP polyfills pointer events in all browsers that haven’t yet implemented them, providing a unified, responsive input model for all devices and input types. + <strong><a href="https://github.com/HotStudio/touchy">Touchy</a></strong>: Touchy is a jQuery plugin for managing touch events on W3C-compliant browsers, such as Mobile Safari or Android Browser, or any browser that supports the ontouchstart, ontouchmove and ontouchend events. + <strong><a href="http://jgestures.codeplex.com/">jGestures</a></strong>: A jQuery plugin that enables you to add gesture events just like native jQuery events. Includes event substitution for mouse events. + <strong>Layout</strong>: The way in which the parts of the website are arranged or laid out. + <strong><a href="https://github.com/jakiestfu/Snap.js">Snap.js</a></strong>: A Library for creating beautiful mobile shelfs (side menus) in Javascript. + <strong><a href="https://github.com/thebird/swipe">Swipe</a></strong>: Swipe is the most accurate touch slider. + <strong><a href="http://idangero.us/swiper/">Swiper</a></strong>: Swiper is a free mobile touch slider with hardware accelerated transitions and native behavior. It is intended to be used in mobile websites, mobile web apps, and mobile native/hybrid apps. + <strong><a href="https://github.com/filamentgroup/jqm-pagination">jqm-pagination</a></strong>: A jQuery Mobile plugin for sequential pagination between pages with support for touch, mouse, and keyboard. + <strong><a href="https://github.com/max-power/swipeslide">swipeslide</a></strong>: A Zepto Plugin for iOS like swipe navigation. + <strong>Scrolling</strong>: Native scrolling of the browsers doesn’t always fit for mobile websites. There are resources which solve this problem. + <strong><a href="https://github.com/azoff/overscroll">Overscroll</a></strong>: Overscroll is a jQuery plug-in that mimics the iphone/ipad scrolling experience in a browser. + <strong><a href="https://www.filamentgroup.com/lab/overthrow.html">Overthrow</a></strong>: A framework-independent, overflow: auto polyfill for use in responsive design. + <strong><a href="https://github.com/zynga/scroller">Zynga Scroller</a></strong>: A pure logic component for scrolling/zooming. It is independent of any specific kind of rendering or event system. + <strong><a href="http://iscrolljs.com/">iScroll</a></strong>: iScroll is a high performance, small footprint, dependency free, multi-platform javascript scroller. + <strong><a href="http://pep.briangonzalez.org/">jQuery.pep.js</a></strong>: A lightweight plugin for kinetic-drag on mobile/desktop. + <strong><a href="http://jswipekinetic.codeplex.com/">jSwipeKinetic</a></strong>: A jQuery plugin that enables you to add kinetic scrolling on your touch optimized projects. jSwipeKinetic is build on top of jGestures. + <strong><a href="https://github.com/visiongeist/pull-to-refresh-js">pull-to-refresh.js</a></strong>: This plugin enables a pull-to-refresh functionality in mobile safari for scrollable block elements with native scrolling on iOS. + <strong>Tap Acceleration</strong>: Every touch-based mobile browser has an artificial ~300ms delay between you tapping a thing on the screen and the browser considering it a “click”, but there are ways to work around this behavior. + <strong><a href="https://developers.google.com/web/updates/2013/12/300ms-tap-delay-gone-away">300ms Tap Delay, Gone Away</a></strong>: An article by Google describing the 300ms delay and how Chrome 32+ on Anrdoid deals with it. + <strong><a href="http://hammerjs.github.io/">Hammer.js</a></strong>: Hammer helps you add support for touch gestures to your page, and remove the 300ms delay from clicks. + <strong><a href="http://cheeaun.github.io/tappable/">Tappable</a></strong>: Tappable is a simple, standalone library to invoke the tap event for touch-friendly web browsers. + <strong><a href="https://github.com/ftlabs/fastclick">fastclick</a></strong>: FastClick is a simple, easy-to-use library for eliminating the 300ms delay between a physical tap and the firing of a click event on mobile browsers. + <strong>Touch Keyboard</strong>: Almost all modern smartphones provide a touch based keyboard for text input. There are some tactics to influence them and work around their quirks. + <strong><a href="https://www.smashingmagazine.com/2013/08/guide-to-designing-touch-keyboards-with-cheat-sheet/">A Guide To Designing Touch Keyboards</a></strong>: In this article, we will look a bit deeper into the usability issues surrounding touch keyboards, including five design guidelines that will alleviate some of these pains. + <strong>Working With Sensors</strong>: All mobile devices are equipped with sensors like gyroscope, accelerometers, photometers, magnetometers and so on. Some of them are accessible in a browser through JavaScript. + <strong><a href="http://www.html5rocks.com/en/tutorials/device/orientation/">This End Up: Using Device Orientation</a></strong>: In this article, we’ll take a look at device orientation and motion events, and use CSS to rotate an image based on the orientation of the device. + <strong><a href="http://lenticular.attasi.com/">lenticular.js</a></strong>: Tilt-controlled images in the browser.</td>
</tr>
</tbody>
</table>
<h1 id="license">License</h1>
<p><a rel="license" href="http://creativecommons.org/licenses/by/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by/4.0/88x31.png" /></a><br />This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p>
<p>Please provide a link back to this repository. This is not necessary for GitHub forks.</p>