Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/twbs/bootstrap-rubygem.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGleb Mazovetskiy <glebm@google.com>2015-09-11 01:05:09 +0300
committerGleb Mazovetskiy <glebm@google.com>2015-09-11 01:05:48 +0300
commitaab35ab41958dcd2e3e94e4c15fb34867a7fdab1 (patch)
treeced44abe0016039edf24a73b186e2db95422d852 /assets/javascripts/bootstrap
parent5ef4dee608c93e6b3d7538500bbac4d05c79b94b (diff)
rake update[v4-dev]
Diffstat (limited to 'assets/javascripts/bootstrap')
-rw-r--r--assets/javascripts/bootstrap/modal.js2
-rw-r--r--assets/javascripts/bootstrap/popover.js16
-rw-r--r--assets/javascripts/bootstrap/tooltip.js27
3 files changed, 27 insertions, 18 deletions
diff --git a/assets/javascripts/bootstrap/modal.js b/assets/javascripts/bootstrap/modal.js
index f28df5c..d24b9d3 100644
--- a/assets/javascripts/bootstrap/modal.js
+++ b/assets/javascripts/bootstrap/modal.js
@@ -427,7 +427,7 @@ var Modal = (function ($) {
this._originalBodyPadding = document.body.style.paddingRight || '';
if (this._isBodyOverflowing) {
- document.body.style.paddingRight = bodyPadding + (this._scrollbarWidth + 'px');
+ document.body.style.paddingRight = bodyPadding + this._scrollbarWidth + 'px';
}
}
}, {
diff --git a/assets/javascripts/bootstrap/popover.js b/assets/javascripts/bootstrap/popover.js
index 9e7b6e8..baf36af 100644
--- a/assets/javascripts/bootstrap/popover.js
+++ b/assets/javascripts/bootstrap/popover.js
@@ -37,7 +37,7 @@ var Popover = (function ($) {
});
var DefaultType = $.extend({}, Tooltip.DefaultType, {
- content: '(string|function)'
+ content: '(string|element|function)'
});
var ClassName = {
@@ -101,19 +101,13 @@ var Popover = (function ($) {
}, {
key: 'setContent',
value: function setContent() {
- var tip = this.getTipElement();
- var title = this.getTitle();
- var content = this._getContent();
- var $titleElement = $(tip).find(Selector.TITLE);
-
- if ($titleElement) {
- $titleElement[this.config.html ? 'html' : 'text'](title);
- }
+ var $tip = $(this.getTipElement());
// we use append for html objects to maintain js events
- $(tip).find(Selector.CONTENT).children().detach().end()[this.config.html ? typeof content === 'string' ? 'html' : 'append' : 'text'](content);
+ this.setElementContent($tip.find(Selector.TITLE), this.getTitle());
+ this.setElementContent($tip.find(Selector.CONTENT), this._getContent());
- $(tip).removeClass(ClassName.FADE).removeClass(ClassName.IN);
+ $tip.removeClass(ClassName.FADE).removeClass(ClassName.IN);
this.cleanupTether();
}
diff --git a/assets/javascripts/bootstrap/tooltip.js b/assets/javascripts/bootstrap/tooltip.js
index fd542f2..ff4b666 100644
--- a/assets/javascripts/bootstrap/tooltip.js
+++ b/assets/javascripts/bootstrap/tooltip.js
@@ -43,7 +43,7 @@ var Tooltip = (function ($) {
var DefaultType = {
animation: 'boolean',
template: 'string',
- title: '(string|function)',
+ title: '(string|element|function)',
trigger: 'string',
delay: '(number|object)',
html: 'boolean',
@@ -329,17 +329,32 @@ var Tooltip = (function ($) {
}, {
key: 'setContent',
value: function setContent() {
- var tip = this.getTipElement();
- var title = this.getTitle();
- var method = this.config.html ? 'html' : 'text';
+ var $tip = $(this.getTipElement());
- $(tip).find(Selector.TOOLTIP_INNER)[method](title);
+ this.setElementContent($tip.find(Selector.TOOLTIP_INNER), this.getTitle());
- $(tip).removeClass(ClassName.FADE).removeClass(ClassName.IN);
+ $tip.removeClass(ClassName.FADE).removeClass(ClassName.IN);
this.cleanupTether();
}
}, {
+ key: 'setElementContent',
+ value: function setElementContent($element, content) {
+ var html = this.config.html;
+ if (typeof content === 'object' && (content.nodeType || content.jquery)) {
+ // content is a DOM node or a jQuery
+ if (html) {
+ if (!$(content).parent().is($element)) {
+ $element.empty().append(content);
+ }
+ } else {
+ $element.text($(content).text());
+ }
+ } else {
+ $element[html ? 'html' : 'text'](content);
+ }
+ }
+ }, {
key: 'getTitle',
value: function getTitle() {
var title = this.element.getAttribute('data-original-title');