Subversion Repositories cheapmusic

Rev

Blame | Last modification | View Log | RSS feed

!function(n){"use strict";var t="clearer",i={clearHtml:'<i class="fas fa-window-close"></i>',cssClass:"",focusable:!0};function s(e,t){this.element=e,this.settings=n.extend({},i,t),this.init()}n.extend(s.prototype,{init:function(){var t=this;this.$element=n(this.element),this.$clearer=n('<div class="input-group-append '+this.settings.cssClass+'"><button class="btn input-group-text form-control" type="button">'+this.settings.clearHtml+"</button></div>"),!1===this.settings.focusable&&this.$clearer.attr({tabindex:-1}),0===this.$element.closest(".input-group").length&&this.$element.wrap("<div class='input-group'></div>"),this.$element.after(this.$clearer),this.update(),this.$clearer.on("click.clearer",function(e){t.$element.val(""),t.$element.trigger("change"),t.$element.focus(),t.update(),e.preventDefault()}),this.$element.on("focus.clearer blur.clearer",function(){t.update()}),this.$element.on("keyup.clearer",function(e){27===e.keyCode&&n(this).val("").focus(),t.update()}),this.$element.on("input.clearer change.clearer paste.clearer",function(){t.update()})},update:function(){1<=this.$element.val().length?this.$clearer.show():this.$clearer.hide()}}),n.fn[t]=function(e){return this.each(function(){n.data(this,"plugin_"+t)||n.data(this,"plugin_"+t,new s(this,e))})}}(jQuery,window,document);