This commit is contained in:
vitalets
2013-08-07 12:19:57 +04:00
parent 0626d63db9
commit 3b46047433
11 changed files with 72 additions and 60 deletions

@ -894,7 +894,8 @@ Applied as jQuery method.
//methods
Popup.prototype = {
containerName: null, //tbd in child class
containerName: null, //method to call container on element
containerDataName: null, //object name in element's .data()
innerCss: null, //tbd in child class
containerClass: 'editable-container editable-popup', //css class applied to container element
init: function(element, options) {
@ -995,7 +996,16 @@ Applied as jQuery method.
/* returns container object */
container: function() {
return this.$element.data(this.containerDataName || this.containerName);
var container;
//first, try get it by `containerDataName`
if(this.containerDataName) {
if(container = this.$element.data(this.containerDataName)) {
return container;
}
}
//second, try `containerName`
container = this.$element.data(this.containerName);
return container;
},
/* call native method of underlying container, e.g. this.$element.popover('method') */
@ -4498,7 +4508,8 @@ Editableform based on jQuery UI
//extend methods
$.extend($.fn.editableContainer.Popup.prototype, {
containerName: 'tooltip', //jQuery method, aplying the widget
containerDataName: 'uiTooltip', //object name in elements .data() (e.g. uiTooltip for tooltip)
//object name in element's .data()
containerDataName: 'ui-tooltip',
innerCss: '.ui-tooltip-content',
//split options on containerOptions and formOptions
@ -4539,15 +4550,8 @@ Editableform based on jQuery UI
this.call(this.containerOptions);
//disable standart triggering tooltip event
//for some versions of jQueryUI it gives error:
//TypeError: this.container(...)._off is not a function
//see: https://github.com/vitalets/x-editable/issues/32
if(this.container()._off) {
this.container()._off(this.container().element, 'mouseover focusin');
} else {
$.error('this.container()._off is not a function. jQuery UI: ' + $.ui.version);
}
//disable standart triggering tooltip events
this.container()._off(this.container().element, 'mouseover focusin');
},
tip: function() {