aboutsummaryrefslogtreecommitdiff
path: root/js
diff options
context:
space:
mode:
authorMark Otto <[email protected]>2013-12-01 20:27:30 -0800
committerMark Otto <[email protected]>2013-12-01 20:27:30 -0800
commit4876cbeef8c79686ba31c3ed22771357d71dbe51 (patch)
tree79fed0fbb2a96fad2247c3014a045e655d1a825e /js
parent1444a3ca638bd8661c0019560117ac75aace3402 (diff)
parent561aff7942d9adfc9508232789e2598406f80934 (diff)
downloadbootstrap-4876cbeef8c79686ba31c3ed22771357d71dbe51.tar.xz
bootstrap-4876cbeef8c79686ba31c3ed22771357d71dbe51.zip
Merge branch 'master' into pr/11412
Conflicts: dist/js/bootstrap.min.js
Diffstat (limited to 'js')
-rw-r--r--js/affix.js2
-rw-r--r--js/alert.js2
-rw-r--r--js/button.js16
-rw-r--r--js/carousel.js10
-rw-r--r--js/collapse.js2
-rw-r--r--js/dropdown.js8
-rw-r--r--js/modal.js2
-rw-r--r--js/popover.js2
-rw-r--r--js/scrollspy.js4
-rw-r--r--js/tab.js2
-rw-r--r--js/tests/unit/button.js6
-rw-r--r--js/tooltip.js2
-rw-r--r--js/transition.js2
13 files changed, 36 insertions, 24 deletions
diff --git a/js/affix.js b/js/affix.js
index 7d111ecc4..552bffa3f 100644
--- a/js/affix.js
+++ b/js/affix.js
@@ -1,5 +1,5 @@
/* ========================================================================
- * Bootstrap: affix.js v3.0.2
+ * Bootstrap: affix.js v3.0.3
* http://getbootstrap.com/javascript/#affix
* ========================================================================
* Copyright 2013 Twitter, Inc.
diff --git a/js/alert.js b/js/alert.js
index 031d72aa5..695ad74d0 100644
--- a/js/alert.js
+++ b/js/alert.js
@@ -1,5 +1,5 @@
/* ========================================================================
- * Bootstrap: alert.js v3.0.2
+ * Bootstrap: alert.js v3.0.3
* http://getbootstrap.com/javascript/#alerts
* ========================================================================
* Copyright 2013 Twitter, Inc.
diff --git a/js/button.js b/js/button.js
index 0145689dd..c9fdde5e4 100644
--- a/js/button.js
+++ b/js/button.js
@@ -1,5 +1,5 @@
/* ========================================================================
- * Bootstrap: button.js v3.0.2
+ * Bootstrap: button.js v3.0.3
* http://getbootstrap.com/javascript/#buttons
* ========================================================================
* Copyright 2013 Twitter, Inc.
@@ -54,15 +54,21 @@
Button.prototype.toggle = function () {
var $parent = this.$element.closest('[data-toggle="buttons"]')
+ var changed = true
if ($parent.length) {
var $input = this.$element.find('input')
- .prop('checked', !this.$element.hasClass('active'))
- .trigger('change')
- if ($input.prop('type') === 'radio') $parent.find('.active').removeClass('active')
+ if ($input.prop('type') === 'radio') {
+ // see if clicking on current one
+ if ($input.prop('checked') && this.$element.hasClass('active'))
+ changed = false
+ else
+ $parent.find('.active').removeClass('active')
+ }
+ if (changed) $input.prop('checked', !this.$element.hasClass('active')).trigger('change')
}
- this.$element.toggleClass('active')
+ if (changed) this.$element.toggleClass('active')
}
diff --git a/js/carousel.js b/js/carousel.js
index 902d4d781..6391a36df 100644
--- a/js/carousel.js
+++ b/js/carousel.js
@@ -1,5 +1,5 @@
/* ========================================================================
- * Bootstrap: carousel.js v3.0.2
+ * Bootstrap: carousel.js v3.0.3
* http://getbootstrap.com/javascript/#carousel
* ========================================================================
* Copyright 2013 Twitter, Inc.
@@ -69,7 +69,7 @@
if (pos > (this.$items.length - 1) || pos < 0) return
- if (this.sliding) return this.$element.one('slid', function () { that.to(pos) })
+ if (this.sliding) return this.$element.one('slid.bs.carousel', function () { that.to(pos) })
if (activeIndex == pos) return this.pause().cycle()
return this.slide(pos > activeIndex ? 'next' : 'prev', $(this.$items[pos]))
@@ -121,7 +121,7 @@
if (this.$indicators.length) {
this.$indicators.find('.active').removeClass('active')
- this.$element.one('slid', function () {
+ this.$element.one('slid.bs.carousel', function () {
var $nextIndicator = $(that.$indicators.children()[that.getActiveIndex()])
$nextIndicator && $nextIndicator.addClass('active')
})
@@ -139,7 +139,7 @@
$next.removeClass([type, direction].join(' ')).addClass('active')
$active.removeClass(['active', direction].join(' '))
that.sliding = false
- setTimeout(function () { that.$element.trigger('slid') }, 0)
+ setTimeout(function () { that.$element.trigger('slid.bs.carousel') }, 0)
})
.emulateTransitionEnd(600)
} else {
@@ -148,7 +148,7 @@
$active.removeClass('active')
$next.addClass('active')
this.sliding = false
- this.$element.trigger('slid')
+ this.$element.trigger('slid.bs.carousel')
}
isCycling && this.cycle()
diff --git a/js/collapse.js b/js/collapse.js
index 9967b167f..1a079938e 100644
--- a/js/collapse.js
+++ b/js/collapse.js
@@ -1,5 +1,5 @@
/* ========================================================================
- * Bootstrap: collapse.js v3.0.2
+ * Bootstrap: collapse.js v3.0.3
* http://getbootstrap.com/javascript/#collapse
* ========================================================================
* Copyright 2013 Twitter, Inc.
diff --git a/js/dropdown.js b/js/dropdown.js
index d5da638de..a56ac8f94 100644
--- a/js/dropdown.js
+++ b/js/dropdown.js
@@ -1,5 +1,5 @@
/* ========================================================================
- * Bootstrap: dropdown.js v3.0.2
+ * Bootstrap: dropdown.js v3.0.3
* http://getbootstrap.com/javascript/#dropdowns
* ========================================================================
* Copyright 2013 Twitter, Inc.
@@ -41,7 +41,7 @@
if (!isActive) {
if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) {
- // if mobile we we use a backdrop because click events don't delegate
+ // if mobile we use a backdrop because click events don't delegate
$('<div class="dropdown-backdrop"/>').insertAfter($(this)).on('click', clearMenus)
}
@@ -123,9 +123,9 @@
$.fn.dropdown = function (option) {
return this.each(function () {
var $this = $(this)
- var data = $this.data('dropdown')
+ var data = $this.data('bs.dropdown')
- if (!data) $this.data('dropdown', (data = new Dropdown(this)))
+ if (!data) $this.data('bs.dropdown', (data = new Dropdown(this)))
if (typeof option == 'string') data[option].call($this)
})
}
diff --git a/js/modal.js b/js/modal.js
index dac50c6c6..3ead5ee88 100644
--- a/js/modal.js
+++ b/js/modal.js
@@ -1,5 +1,5 @@
/* ========================================================================
- * Bootstrap: modal.js v3.0.2
+ * Bootstrap: modal.js v3.0.3
* http://getbootstrap.com/javascript/#modals
* ========================================================================
* Copyright 2013 Twitter, Inc.
diff --git a/js/popover.js b/js/popover.js
index 35b488550..996962aa2 100644
--- a/js/popover.js
+++ b/js/popover.js
@@ -1,5 +1,5 @@
/* ========================================================================
- * Bootstrap: popover.js v3.0.2
+ * Bootstrap: popover.js v3.0.3
* http://getbootstrap.com/javascript/#popovers
* ========================================================================
* Copyright 2013 Twitter, Inc.
diff --git a/js/scrollspy.js b/js/scrollspy.js
index 1d2fc7859..2efe14fdd 100644
--- a/js/scrollspy.js
+++ b/js/scrollspy.js
@@ -1,5 +1,5 @@
/* ========================================================================
- * Bootstrap: scrollspy.js v3.0.2
+ * Bootstrap: scrollspy.js v3.0.3
* http://getbootstrap.com/javascript/#scrollspy
* ========================================================================
* Copyright 2013 Twitter, Inc.
@@ -113,7 +113,7 @@
.addClass('active')
}
- active.trigger('activate')
+ active.trigger('activate.bs.scrollspy')
}
diff --git a/js/tab.js b/js/tab.js
index c803b89bb..6b0f5f672 100644
--- a/js/tab.js
+++ b/js/tab.js
@@ -1,5 +1,5 @@
/* ========================================================================
- * Bootstrap: tab.js v3.0.2
+ * Bootstrap: tab.js v3.0.3
* http://getbootstrap.com/javascript/#tabs
* ========================================================================
* Copyright 2013 Twitter, Inc.
diff --git a/js/tests/unit/button.js b/js/tests/unit/button.js
index 16284e0ce..115edefaf 100644
--- a/js/tests/unit/button.js
+++ b/js/tests/unit/button.js
@@ -111,6 +111,12 @@ $(function () {
ok(!btn1.find('input').prop('checked'), 'btn1 is checked')
ok(btn2.hasClass('active'), 'btn2 has active class')
ok(btn2.find('input').prop('checked'), 'btn2 is checked')
+
+ btn2.find('input').click() /* clicking an already checked radio should not un-check it */
+ ok(!btn1.hasClass('active'), 'btn1 does not have active class')
+ ok(!btn1.find('input').prop('checked'), 'btn1 is checked')
+ ok(btn2.hasClass('active'), 'btn2 has active class')
+ ok(btn2.find('input').prop('checked'), 'btn2 is checked')
})
})
diff --git a/js/tooltip.js b/js/tooltip.js
index 9e6177554..4c848f0e2 100644
--- a/js/tooltip.js
+++ b/js/tooltip.js
@@ -1,5 +1,5 @@
/* ========================================================================
- * Bootstrap: tooltip.js v3.0.2
+ * Bootstrap: tooltip.js v3.0.3
* http://getbootstrap.com/javascript/#tooltip
* Inspired by the original jQuery.tipsy by Jason Frame
* ========================================================================
diff --git a/js/transition.js b/js/transition.js
index a692dfda9..773dbe693 100644
--- a/js/transition.js
+++ b/js/transition.js
@@ -1,5 +1,5 @@
/* ========================================================================
- * Bootstrap: transition.js v3.0.2
+ * Bootstrap: transition.js v3.0.3
* http://getbootstrap.com/javascript/#transitions
* ========================================================================
* Copyright 2013 Twitter, Inc.