IE11 Support
Added unprefixed touch-action CSS attribute Added unprefixed pointer events handlers hooks
This commit is contained in:
commit
e608dafaf1
5 changed files with 49 additions and 5 deletions
17
README.md
17
README.md
|
@ -820,6 +820,23 @@ You can change the port by using `grunt serve --port 8001`.
|
||||||
- **lib/** All other third party assets (JavaScript, CSS, fonts)
|
- **lib/** All other third party assets (JavaScript, CSS, fonts)
|
||||||
|
|
||||||
|
|
||||||
|
### Contributing
|
||||||
|
|
||||||
|
Please keep the [issue tracker](github.com/hakimel/reveal.js/issues) limited to **bug reports**, **feature requests** and **pull requests**. If you are reporting a bug make sure to include information about which browser and operating system you are using as well as the necessary steps to reproduce the issue.
|
||||||
|
|
||||||
|
If you have personal support questions use [StackOverflow](http://stackoverflow.com/questions/tagged/reveal.js).
|
||||||
|
|
||||||
|
|
||||||
|
#### Pull requests
|
||||||
|
|
||||||
|
- Should follow the coding style
|
||||||
|
- Tabs to indent
|
||||||
|
- Single-quoted strings
|
||||||
|
- No space between function name and opening argument parenthesis
|
||||||
|
- One space after opening and before closing parenthesis
|
||||||
|
- Should be made towards the **dev branch**
|
||||||
|
- Should be submitted from a feature/topic branch (not your master)
|
||||||
|
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
|
|
|
@ -487,6 +487,7 @@ body {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
|
||||||
-ms-touch-action: none;
|
-ms-touch-action: none;
|
||||||
|
touch-action: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.reveal .slides {
|
.reveal .slides {
|
||||||
|
|
4
css/reveal.min.css
vendored
4
css/reveal.min.css
vendored
File diff suppressed because one or more lines are too long
20
js/reveal.js
20
js/reveal.js
|
@ -595,11 +595,18 @@ var Reveal = (function(){
|
||||||
dom.wrapper.addEventListener( 'touchend', onTouchEnd, false );
|
dom.wrapper.addEventListener( 'touchend', onTouchEnd, false );
|
||||||
|
|
||||||
// Support pointer-style touch interaction as well
|
// Support pointer-style touch interaction as well
|
||||||
|
// IE 10 uses prefixed version of pointer events
|
||||||
if( window.navigator.msPointerEnabled ) {
|
if( window.navigator.msPointerEnabled ) {
|
||||||
dom.wrapper.addEventListener( 'MSPointerDown', onPointerDown, false );
|
dom.wrapper.addEventListener( 'MSPointerDown', onPointerDown, false );
|
||||||
dom.wrapper.addEventListener( 'MSPointerMove', onPointerMove, false );
|
dom.wrapper.addEventListener( 'MSPointerMove', onPointerMove, false );
|
||||||
dom.wrapper.addEventListener( 'MSPointerUp', onPointerUp, false );
|
dom.wrapper.addEventListener( 'MSPointerUp', onPointerUp, false );
|
||||||
}
|
}
|
||||||
|
// IE 11 uses un-prefixed version of pointer events
|
||||||
|
if( window.navigator.pointerEnabled ) {
|
||||||
|
dom.wrapper.addEventListener( 'pointerdown', onPointerDown, false );
|
||||||
|
dom.wrapper.addEventListener( 'pointermove', onPointerMove, false );
|
||||||
|
dom.wrapper.addEventListener( 'pointerup', onPointerUp, false );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if( config.keyboard ) {
|
if( config.keyboard ) {
|
||||||
|
@ -636,11 +643,18 @@ var Reveal = (function(){
|
||||||
dom.wrapper.removeEventListener( 'touchmove', onTouchMove, false );
|
dom.wrapper.removeEventListener( 'touchmove', onTouchMove, false );
|
||||||
dom.wrapper.removeEventListener( 'touchend', onTouchEnd, false );
|
dom.wrapper.removeEventListener( 'touchend', onTouchEnd, false );
|
||||||
|
|
||||||
|
// IE10
|
||||||
if( window.navigator.msPointerEnabled ) {
|
if( window.navigator.msPointerEnabled ) {
|
||||||
dom.wrapper.removeEventListener( 'MSPointerDown', onPointerDown, false );
|
dom.wrapper.removeEventListener( 'MSPointerDown', onPointerDown, false );
|
||||||
dom.wrapper.removeEventListener( 'MSPointerMove', onPointerMove, false );
|
dom.wrapper.removeEventListener( 'MSPointerMove', onPointerMove, false );
|
||||||
dom.wrapper.removeEventListener( 'MSPointerUp', onPointerUp, false );
|
dom.wrapper.removeEventListener( 'MSPointerUp', onPointerUp, false );
|
||||||
}
|
}
|
||||||
|
// IE11
|
||||||
|
if( window.navigator.pointerEnabled ) {
|
||||||
|
dom.wrapper.removeEventListener( 'pointerdown', onPointerDown, false );
|
||||||
|
dom.wrapper.removeEventListener( 'pointermove', onPointerMove, false );
|
||||||
|
dom.wrapper.removeEventListener( 'pointerup', onPointerUp, false );
|
||||||
|
}
|
||||||
|
|
||||||
if ( config.progress && dom.progress ) {
|
if ( config.progress && dom.progress ) {
|
||||||
dom.progress.removeEventListener( 'click', onProgressClicked, false );
|
dom.progress.removeEventListener( 'click', onProgressClicked, false );
|
||||||
|
@ -2557,7 +2571,7 @@ var Reveal = (function(){
|
||||||
*/
|
*/
|
||||||
function onPointerDown( event ) {
|
function onPointerDown( event ) {
|
||||||
|
|
||||||
if( event.pointerType === event.MSPOINTER_TYPE_TOUCH ) {
|
if(( event.pointerType === event.MSPOINTER_TYPE_TOUCH ) || ( event.pointerType === "touch" )) {
|
||||||
event.touches = [{ clientX: event.clientX, clientY: event.clientY }];
|
event.touches = [{ clientX: event.clientX, clientY: event.clientY }];
|
||||||
onTouchStart( event );
|
onTouchStart( event );
|
||||||
}
|
}
|
||||||
|
@ -2569,7 +2583,7 @@ var Reveal = (function(){
|
||||||
*/
|
*/
|
||||||
function onPointerMove( event ) {
|
function onPointerMove( event ) {
|
||||||
|
|
||||||
if( event.pointerType === event.MSPOINTER_TYPE_TOUCH ) {
|
if(( event.pointerType === event.MSPOINTER_TYPE_TOUCH ) || ( event.pointerType === "touch" )) {
|
||||||
event.touches = [{ clientX: event.clientX, clientY: event.clientY }];
|
event.touches = [{ clientX: event.clientX, clientY: event.clientY }];
|
||||||
onTouchMove( event );
|
onTouchMove( event );
|
||||||
}
|
}
|
||||||
|
@ -2581,7 +2595,7 @@ var Reveal = (function(){
|
||||||
*/
|
*/
|
||||||
function onPointerUp( event ) {
|
function onPointerUp( event ) {
|
||||||
|
|
||||||
if( event.pointerType === event.MSPOINTER_TYPE_TOUCH ) {
|
if(( event.pointerType === event.MSPOINTER_TYPE_TOUCH ) || ( event.pointerType === "touch" )) {
|
||||||
event.touches = [{ clientX: event.clientX, clientY: event.clientY }];
|
event.touches = [{ clientX: event.clientX, clientY: event.clientY }];
|
||||||
onTouchEnd( event );
|
onTouchEnd( event );
|
||||||
}
|
}
|
||||||
|
|
8
js/reveal.min.js
vendored
8
js/reveal.min.js
vendored
File diff suppressed because one or more lines are too long
Loading…
Reference in a new issue