aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfat <[email protected]>2014-06-10 20:24:19 -0700
committerfat <[email protected]>2014-06-10 20:35:03 -0700
commita1dad14f448b9885147a5ae05458a4c5f457b43b (patch)
tree449e6b86548aa92ae03044b69ddd8730ee45a5c5
parent2fb31318d602c79978fa3493e246b3b53263d052 (diff)
downloadbootstrap-a1dad14f448b9885147a5ae05458a4c5f457b43b.tar.xz
bootstrap-a1dad14f448b9885147a5ae05458a4c5f457b43b.zip
fix #13185 - keyboard support for carousel
-rw-r--r--js/carousel.js16
1 files changed, 13 insertions, 3 deletions
diff --git a/js/carousel.js b/js/carousel.js
index af51cf50d..bc4c60ef4 100644
--- a/js/carousel.js
+++ b/js/carousel.js
@@ -18,7 +18,7 @@
// =========================
var Carousel = function (element, options) {
- this.$element = $(element)
+ this.$element = $(element).on('keydown.bs.carousel', $.proxy(this.keydown, this))
this.$indicators = this.$element.find('.carousel-indicators')
this.options = options
this.paused =
@@ -28,8 +28,8 @@
this.$items = null
this.options.pause == 'hover' && this.$element
- .on('mouseenter', $.proxy(this.pause, this))
- .on('mouseleave', $.proxy(this.cycle, this))
+ .on('mouseenter.bs.carousel', $.proxy(this.pause, this))
+ .on('mouseleave.bs.carousel', $.proxy(this.cycle, this))
}
Carousel.VERSION = '3.1.1'
@@ -40,6 +40,16 @@
wrap: true
}
+ Carousel.prototype.keydown = function (e) {
+ switch (e.which) {
+ case 37: this.prev(); break
+ case 39: this.next(); break
+ default: return
+ }
+
+ e.preventDefault()
+ }
+
Carousel.prototype.cycle = function (e) {
e || (this.paused = false)