diff options
| author | Mark Otto <[email protected]> | 2015-03-01 13:44:10 -0800 |
|---|---|---|
| committer | Mark Otto <[email protected]> | 2015-03-01 13:44:10 -0800 |
| commit | c16fee5efd5620197ab1213ca3699830d590ee39 (patch) | |
| tree | cd608536dfc7fbaaf60658bcaa5210ebd8ef5624 /docs/dist | |
| parent | 50a51ffc361276d13c4da16684277279fd567d4c (diff) | |
| parent | 1ba2630ccf460106036129086c98c5bacd7baa98 (diff) | |
| download | bootstrap-c16fee5efd5620197ab1213ca3699830d590ee39.tar.xz bootstrap-c16fee5efd5620197ab1213ca3699830d590ee39.zip | |
Merge branch 'master' into v4
Conflicts:
.travis.yml
Gruntfile.js
bower.json
dist/css/bootstrap.css
dist/css/bootstrap.css.map
dist/css/bootstrap.min.css
dist/js/bootstrap.js
dist/js/bootstrap.min.js
docs/_data/glyphicons.yml
docs/_includes/components/breadcrumbs.html
docs/_includes/components/button-dropdowns.html
docs/_includes/components/button-groups.html
docs/_includes/components/dropdowns.html
docs/_includes/components/glyphicons.html
docs/_includes/components/labels.html
docs/_includes/components/list-group.html
docs/_includes/components/media.html
docs/_includes/components/navs.html
docs/_includes/components/panels.html
docs/_includes/components/progress-bars.html
docs/_includes/components/thumbnails.html
docs/_includes/components/wells.html
docs/_includes/css/buttons.html
docs/_includes/css/forms.html
docs/_includes/css/helpers.html
docs/_includes/css/images.html
docs/_includes/css/less.html
docs/_includes/customizer-variables.html
docs/_includes/getting-started/accessibility.html
docs/_includes/getting-started/browser-device-support.html
docs/_includes/getting-started/community.html
docs/_includes/getting-started/examples.html
docs/_includes/getting-started/grunt.html
docs/_includes/getting-started/license.html
docs/_includes/getting-started/template.html
docs/_includes/header.html
docs/_includes/js/affix.html
docs/_includes/js/alerts.html
docs/_includes/js/carousel.html
docs/_includes/js/collapse.html
docs/_includes/js/dropdowns.html
docs/_includes/js/modal.html
docs/_includes/js/overview.html
docs/_includes/js/popovers.html
docs/_includes/js/scrollspy.html
docs/_includes/js/tabs.html
docs/_includes/js/tooltips.html
docs/_includes/js/transitions.html
docs/_includes/nav/javascript.html
docs/_layouts/default.html
docs/assets/css/docs.min.css
docs/assets/css/src/docs.css
docs/assets/js/customize.min.js
docs/assets/js/docs.min.js
docs/assets/js/raw-files.min.js
docs/assets/js/vendor/FileSaver.js
docs/assets/js/vendor/autoprefixer.js
docs/assets/js/vendor/uglify.min.js
docs/dist/css/bootstrap.css
docs/dist/css/bootstrap.css.map
docs/dist/css/bootstrap.min.css
docs/dist/js/bootstrap.min.js
docs/examples/blog/index.html
docs/examples/carousel/index.html
docs/examples/cover/index.html
docs/examples/dashboard/index.html
docs/examples/narrow-jumbotron/narrow-jumbotron.css
docs/examples/navbar-fixed-top/index.html
docs/examples/navbar-static-top/index.html
docs/examples/non-responsive/index.html
docs/examples/non-responsive/non-responsive.css
docs/examples/theme/index.html
grunt/configBridge.json
js/affix.js
js/carousel.js
js/collapse.js
js/dropdown.js
js/modal.js
js/popover.js
js/scrollspy.js
js/tab.js
js/tests/unit/affix.js
js/tests/unit/button.js
js/tests/unit/carousel.js
js/tests/unit/modal.js
js/tests/unit/tooltip.js
js/tooltip.js
less/badges.less
less/glyphicons.less
less/type.less
less/variables.less
package.json
scss/_dropdown.scss
scss/_forms.scss
test-infra/npm-shrinkwrap.json
Diffstat (limited to 'docs/dist')
| -rw-r--r-- | docs/dist/js/bootstrap.js | 99 |
1 files changed, 51 insertions, 48 deletions
diff --git a/docs/dist/js/bootstrap.js b/docs/dist/js/bootstrap.js index 584fe3ba2..c72454d9a 100644 --- a/docs/dist/js/bootstrap.js +++ b/docs/dist/js/bootstrap.js @@ -306,10 +306,10 @@ if (typeof jQuery === 'undefined') { this.$element = $(element) this.$indicators = this.$element.find('.carousel-indicators') this.options = options - this.paused = - this.sliding = - this.interval = - this.$active = + this.paused = null + this.sliding = null + this.interval = null + this.$active = null this.$items = null this.options.keyboard && this.$element.on('keydown.bs.carousel', $.proxy(this.keydown, this)) @@ -811,7 +811,7 @@ if (typeof jQuery === 'undefined') { return $this.trigger('click') } - var desc = ' li:not(.divider):visible a' + var desc = ' li:not(.disabled):visible a' var $items = $parent.find('[role="menu"]' + desc + ', [role="listbox"]' + desc) if (!$items.length) return @@ -915,12 +915,13 @@ if (typeof jQuery === 'undefined') { // ====================== var Modal = function (element, options) { - this.options = options - this.$body = $(document.body) - this.$element = $(element) - this.$backdrop = - this.isShown = null - this.scrollbarWidth = 0 + this.options = options + this.$body = $(document.body) + this.$element = $(element) + this.$backdrop = null + this.isShown = null + this.originalBodyPad = null + this.scrollbarWidth = 0 if (this.options.remote) { this.$element @@ -1149,17 +1150,23 @@ if (typeof jQuery === 'undefined') { } Modal.prototype.checkScrollbar = function () { - this.bodyIsOverflowing = document.body.scrollHeight > document.documentElement.clientHeight + var fullWindowWidth = window.innerWidth + if (!fullWindowWidth) { // workaround for missing window.innerWidth in IE8 + var documentElementRect = document.documentElement.getBoundingClientRect() + fullWindowWidth = documentElementRect.right - Math.abs(documentElementRect.left) + } + this.bodyIsOverflowing = document.body.clientWidth < fullWindowWidth this.scrollbarWidth = this.measureScrollbar() } Modal.prototype.setScrollbar = function () { var bodyPad = parseInt((this.$body.css('padding-right') || 0), 10) + this.originalBodyPad = document.body.style.paddingRight || '' if (this.bodyIsOverflowing) this.$body.css('padding-right', bodyPad + this.scrollbarWidth) } Modal.prototype.resetScrollbar = function () { - this.$body.css('padding-right', '') + this.$body.css('padding-right', this.originalBodyPad) } Modal.prototype.measureScrollbar = function () { // thx walsh @@ -1241,11 +1248,11 @@ if (typeof jQuery === 'undefined') { // =============================== var Tooltip = function (element, options) { - this.type = - this.options = - this.enabled = - this.timeout = - this.hoverState = + this.type = null + this.options = null + this.enabled = null + this.timeout = null + this.hoverState = null this.$element = null this.init('tooltip', element, options) @@ -1278,6 +1285,10 @@ if (typeof jQuery === 'undefined') { this.options = this.getOptions(options) this.$viewport = this.options.viewport && $(this.options.viewport.selector || this.options.viewport) + if (this.$element[0] instanceof document.constructor && !this.options.selector) { + throw new Error('`selector` option must be specified when initializing ' + this.type + ' on the window.document object!'); + } + var triggers = this.options.trigger.split(' ') for (var i = triggers.length; i--;) { @@ -1498,10 +1509,10 @@ if (typeof jQuery === 'undefined') { this.replaceArrow(arrowDelta, $tip[0][arrowOffsetPosition], isVertical) } - Tooltip.prototype.replaceArrow = function (delta, dimension, isHorizontal) { + Tooltip.prototype.replaceArrow = function (delta, dimension, isVertical) { this.arrow() - .css(isHorizontal ? 'left' : 'top', 50 * (1 - delta / dimension) + '%') - .css(isHorizontal ? 'top' : 'left', '') + .css(isVertical ? 'left' : 'top', 50 * (1 - delta / dimension) + '%') + .css(isVertical ? 'top' : 'left', '') } Tooltip.prototype.setContent = function () { @@ -1514,7 +1525,7 @@ if (typeof jQuery === 'undefined') { Tooltip.prototype.hide = function (callback) { var that = this - var $tip = this.tip() + var $tip = $(this.$tip) var e = $.Event('hide.bs.' + this.type) function complete() { @@ -1531,7 +1542,7 @@ if (typeof jQuery === 'undefined') { $tip.removeClass('in') - $.support.transition && this.$tip.hasClass('fade') ? + $.support.transition && $tip.hasClass('fade') ? $tip .one('bsTransitionEnd', complete) .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) : @@ -1774,11 +1785,6 @@ if (typeof jQuery === 'undefined') { return (this.$arrow = this.$arrow || this.tip().find('.popover-arrow')) } - Popover.prototype.tip = function () { - if (!this.$tip) this.$tip = $(this.options.template) - return this.$tip - } - // POPOVER PLUGIN DEFINITION // ========================= @@ -1827,10 +1833,8 @@ if (typeof jQuery === 'undefined') { // ========================== function ScrollSpy(element, options) { - var process = $.proxy(this.process, this) - - this.$body = $('body') - this.$scrollElement = $(element).is('body') ? $(window) : $(element) + this.$body = $(document.body) + this.$scrollElement = $(element).is(document.body) ? $(window) : $(element) this.options = $.extend({}, ScrollSpy.DEFAULTS, options) this.selector = (this.options.target || '') + ' .nav li > a' this.offsets = [] @@ -1838,7 +1842,7 @@ if (typeof jQuery === 'undefined') { this.activeTarget = null this.scrollHeight = 0 - this.$scrollElement.on('scroll.bs.scrollspy', process) + this.$scrollElement.on('scroll.bs.scrollspy', $.proxy(this.process, this)) this.refresh() this.process() } @@ -1854,20 +1858,19 @@ if (typeof jQuery === 'undefined') { } ScrollSpy.prototype.refresh = function () { - var offsetMethod = 'offset' - var offsetBase = 0 + var that = this + var offsetMethod = 'offset' + var offsetBase = 0 + + this.offsets = [] + this.targets = [] + this.scrollHeight = this.getScrollHeight() if (!$.isWindow(this.$scrollElement[0])) { offsetMethod = 'position' offsetBase = this.$scrollElement.scrollTop() } - this.offsets = [] - this.targets = [] - this.scrollHeight = this.getScrollHeight() - - var self = this - this.$body .find(this.selector) .map(function () { @@ -1882,8 +1885,8 @@ if (typeof jQuery === 'undefined') { }) .sort(function (a, b) { return a[0] - b[0] }) .each(function () { - self.offsets.push(this[0]) - self.targets.push(this[1]) + that.offsets.push(this[0]) + that.targets.push(this[1]) }) } @@ -1923,8 +1926,8 @@ if (typeof jQuery === 'undefined') { this.clear() var selector = this.selector + - '[data-target="' + target + '"],' + - this.selector + '[href="' + target + '"]' + '[data-target="' + target + '"],' + + this.selector + '[href="' + target + '"]' var active = $(selector) .parents('li') @@ -2077,7 +2080,7 @@ if (typeof jQuery === 'undefined') { element.removeClass('fade') } - if (element.parent('.dropdown-menu')) { + if (element.parent('.dropdown-menu').length) { element .closest('li.dropdown') .addClass('active') @@ -2164,8 +2167,8 @@ if (typeof jQuery === 'undefined') { .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this)) this.$element = $(element) - this.affixed = - this.unpin = + this.affixed = null + this.unpin = null this.pinnedOffset = null this.checkPosition() |
