1
0
mirror of https://github.com/twbs/bootstrap.git synced 2025-08-17 19:06:40 +02:00

if interval is false, do not autocycle the carousel

This commit is contained in:
Jacob Thornton
2012-03-19 15:48:57 -07:00
parent 83a7a69893
commit 67f199678c
6 changed files with 14 additions and 11 deletions

Binary file not shown.

View File

@@ -27,7 +27,7 @@
var Carousel = function (element, options) { var Carousel = function (element, options) {
this.$element = $(element) this.$element = $(element)
this.options = $.extend({}, $.fn.carousel.defaults, options) this.options = options
this.options.slide && this.slide(this.options.slide) this.options.slide && this.slide(this.options.slide)
this.options.pause == 'hover' && this.$element this.options.pause == 'hover' && this.$element
.on('mouseenter', $.proxy(this.pause, this)) .on('mouseenter', $.proxy(this.pause, this))
@@ -37,7 +37,8 @@
Carousel.prototype = { Carousel.prototype = {
cycle: function () { cycle: function () {
this.interval = setInterval($.proxy(this.next, this), this.options.interval) this.options.interval
&& (this.interval = setInterval($.proxy(this.next, this), this.options.interval))
return this return this
} }
@@ -129,11 +130,11 @@
return this.each(function () { return this.each(function () {
var $this = $(this) var $this = $(this)
, data = $this.data('carousel') , data = $this.data('carousel')
, options = typeof option == 'object' && option , options = $.extend({}, $.fn.carousel.defaults, typeof option == 'object' && option)
if (!data) $this.data('carousel', (data = new Carousel(this, options))) if (!data) $this.data('carousel', (data = new Carousel(this, options)))
if (typeof option == 'number') data.to(option) if (typeof option == 'number') data.to(option)
else if (typeof option == 'string' || (option = options.slide)) data[option]() else if (typeof option == 'string' || (option = options.slide)) data[option]()
else data.cycle() else if (options.interval) data.cycle()
}) })
} }

View File

@@ -109,7 +109,8 @@
} }
, highlighter: function (item) { , highlighter: function (item) {
return item.replace(new RegExp('(' + this.query + ')', 'ig'), function ($1, match) { var query = this.query.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&')
return item.replace(new RegExp('(' + query + ')', 'ig'), function ($1, match) {
return '<strong>' + match + '</strong>' return '<strong>' + match + '</strong>'
}) })
} }

View File

@@ -1308,7 +1308,7 @@ $('#myCollapsible').on('hidden', function () {
<td>interval</td> <td>interval</td>
<td>number</td> <td>number</td>
<td>5000</td> <td>5000</td>
<td>The amount of time to delay between automatically cycling an item.</td> <td>The amount of time to delay between automatically cycling an item. If false, carousel will not automatically cycle.</td>
</tr> </tr>
<tr> <tr>
<td>pause</td> <td>pause</td>

View File

@@ -1232,7 +1232,7 @@ $('#myCollapsible').on('hidden', function () {
<td>{{_i}}interval{{/i}}</td> <td>{{_i}}interval{{/i}}</td>
<td>{{_i}}number{{/i}}</td> <td>{{_i}}number{{/i}}</td>
<td>5000</td> <td>5000</td>
<td>{{_i}}The amount of time to delay between automatically cycling an item.{{/i}}</td> <td>{{_i}}The amount of time to delay between automatically cycling an item. If false, carousel will not automatically cycle.{{/i}}</td>
</tr> </tr>
<tr> <tr>
<td>{{_i}}pause{{/i}}</td> <td>{{_i}}pause{{/i}}</td>

View File

@@ -27,7 +27,7 @@
var Carousel = function (element, options) { var Carousel = function (element, options) {
this.$element = $(element) this.$element = $(element)
this.options = $.extend({}, $.fn.carousel.defaults, options) this.options = options
this.options.slide && this.slide(this.options.slide) this.options.slide && this.slide(this.options.slide)
this.options.pause == 'hover' && this.$element this.options.pause == 'hover' && this.$element
.on('mouseenter', $.proxy(this.pause, this)) .on('mouseenter', $.proxy(this.pause, this))
@@ -37,7 +37,8 @@
Carousel.prototype = { Carousel.prototype = {
cycle: function () { cycle: function () {
this.interval = setInterval($.proxy(this.next, this), this.options.interval) this.options.interval
&& (this.interval = setInterval($.proxy(this.next, this), this.options.interval))
return this return this
} }
@@ -129,11 +130,11 @@
return this.each(function () { return this.each(function () {
var $this = $(this) var $this = $(this)
, data = $this.data('carousel') , data = $this.data('carousel')
, options = typeof option == 'object' && option , options = $.extend({}, $.fn.carousel.defaults, typeof option == 'object' && option)
if (!data) $this.data('carousel', (data = new Carousel(this, options))) if (!data) $this.data('carousel', (data = new Carousel(this, options)))
if (typeof option == 'number') data.to(option) if (typeof option == 'number') data.to(option)
else if (typeof option == 'string' || (option = options.slide)) data[option]() else if (typeof option == 'string' || (option = options.slide)) data[option]()
else data.cycle() else if (options.interval) data.cycle()
}) })
} }