43 lines
902 B
Plaintext
43 lines
902 B
Plaintext
define([
|
|
'jquery',
|
|
'./utils'
|
|
], function ($, Utils) {
|
|
function Dropdown ($element, options) {
|
|
this.$element = $element;
|
|
this.options = options;
|
|
|
|
Dropdown.__super__.constructor.call(this);
|
|
}
|
|
|
|
Utils.Extend(Dropdown, Utils.Observable);
|
|
|
|
Dropdown.prototype.render = function () {
|
|
var $dropdown = $(
|
|
'<span class="select2-dropdown">' +
|
|
'<span class="select2-results"></span>' +
|
|
'</span>'
|
|
);
|
|
|
|
$dropdown.attr('dir', this.options.get('dir'));
|
|
|
|
this.$dropdown = $dropdown;
|
|
|
|
return $dropdown;
|
|
};
|
|
|
|
Dropdown.prototype.bind = function () {
|
|
// Should be implemented in subclasses
|
|
};
|
|
|
|
Dropdown.prototype.position = function ($dropdown, $container) {
|
|
// Should be implmented in subclasses
|
|
};
|
|
|
|
Dropdown.prototype.destroy = function () {
|
|
// Remove the dropdown from the DOM
|
|
this.$dropdown.remove();
|
|
};
|
|
|
|
return Dropdown;
|
|
});
|