From 6ae5fb12e6c996a6526250e8cb703b007e4213fc Mon Sep 17 00:00:00 2001 From: "Patrick H. Lauke" Date: Mon, 17 Apr 2017 13:26:46 +0100 Subject: Fix carousel "hover" behavior on touch-enabled devices * Add carousel mouse listeners even if touch events enabled - touch events are enabled not just on "mobile", just also on touch-enabled desktop/laptop devices; additionally, it's possible to pair a mouse with traditionally touch-only devices (e.g. Android phones/tablets); currently, in these situations the carousel WON'T pause even when using a mouse * Restart cycle after touchend as `mouseenter` is fired as part of the touch compatibility events, the previous change results in carousels which cycle until the user tapped/interacted with them. after that they stop cycling (as `mouseleave` is not sent to the carousel after user scrolled/tapped away). this fix resets the cycling after `touchend` - essentially returning to the previous behavior, where on touch the carousel essentially never pauses, but now with the previous fix it at least pauses correctly for mouse users on touch-enabled devices. includes documentation for this new behavior. --- docs/components/carousel.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'docs/components') diff --git a/docs/components/carousel.md b/docs/components/carousel.md index d1606940a..ab84bf460 100644 --- a/docs/components/carousel.md +++ b/docs/components/carousel.md @@ -210,7 +210,8 @@ Options can be passed via data attributes or JavaScript. For data attributes, ap pause string | boolean "hover" - If set to "hover", pauses the cycling of the carousel on mouseenter and resumes the cycling of the carousel on mouseleave. If set to false, hovering over the carousel won't pause it. +

If set to "hover", pauses the cycling of the carousel on mouseenter and resumes the cycling of the carousel on mouseleave. If set to false, hovering over the carousel won't pause it.

+

On touch-enabled devices, when set to "hover", cycling will pause on touchend (once the user finished interacting with the carousel) for two intervals, before automatically resuming. Note that this is in addition to the above mouse behavior.

ride -- cgit v1.2.3