mirror of
https://github.com/Icinga/icingaweb2.git
synced 2025-07-26 15:24:05 +02:00
JS: Improve selector used in the selectable behavior
This commit is contained in:
parent
755f361e4c
commit
30124f384e
@ -5,17 +5,12 @@
|
|||||||
|
|
||||||
Icinga.Behaviors = Icinga.Behaviors || {};
|
Icinga.Behaviors = Icinga.Behaviors || {};
|
||||||
|
|
||||||
var Selectable = function(icinga) {
|
/**
|
||||||
Icinga.EventListener.call(this, icinga);
|
* Select all contents from the target of the given event
|
||||||
this.on('rendered', this.onRendered, this);
|
*
|
||||||
};
|
* @param {object} e Event
|
||||||
|
*/
|
||||||
$.extend(Selectable.prototype, new Icinga.EventListener(), {
|
function onSelect(e) {
|
||||||
onRendered: function(e) {
|
|
||||||
$('.selectable', e.target).on('dblclick', e.data.self.selectText);
|
|
||||||
},
|
|
||||||
|
|
||||||
selectText: function(e) {
|
|
||||||
var b = document.body,
|
var b = document.body,
|
||||||
r;
|
r;
|
||||||
if (b.createTextRange) {
|
if (b.createTextRange) {
|
||||||
@ -30,7 +25,25 @@
|
|||||||
s.addRange(r);
|
s.addRange(r);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Behavior for text that is selectable via double click
|
||||||
|
*
|
||||||
|
* @param {Icinga} icinga
|
||||||
|
*
|
||||||
|
* @constructor
|
||||||
|
*/
|
||||||
|
var Selectable = function(icinga) {
|
||||||
|
Icinga.EventListener.call(this, icinga);
|
||||||
|
this.on('rendered', this.onRendered, this);
|
||||||
|
};
|
||||||
|
|
||||||
|
$.extend(Selectable.prototype, new Icinga.EventListener(), {
|
||||||
|
onRendered: function(e) {
|
||||||
|
$(e.target).find('.selectable').on('dblclick', onSelect);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
Icinga.Behaviors.Selectable = Selectable;
|
Icinga.Behaviors.Selectable = Selectable;
|
||||||
|
|
||||||
})(Icinga, jQuery);
|
})(Icinga, jQuery);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user