!function(t,e){"function"==typeof define&&define.amd?define(["$"],e):"object"==typeof exports?module.exports=e():t.Select=e(window.Zepto||window.jQuery||$)}(this,function(t){t.fn.Select=function(i){var s=[];return t(this).each(function(){var t=new e(this,i);t.init(),s.push(t)}),t(s)};var e=function(e,i){var s=Math.random().toString().replace(".","");this.id="sel_"+(+new Date).toString().substr(-8)+s,this.default={maxHeight:200,maxWidth:null,disabled:!1,selected:null,model:null},this.settings=t.extend({},this.default,i),this.target=t(e),this.model=t.extend([],this.settings.model)};return e.prototype={init:function(){return this.create(),this.bindEvent(),this},create:function(){var e=this.target[0].getBoundingClientRect();this.w=this.settings.width||e.right-e.left,this.h=this.settings.height||e.bottom-e.top,this.trigger=t('
');var i=this.target.attr("class");this.trigger.addClass(i),this.trigger.width(this.w),this.trigger.height(this.h).css("lineHeight",this.h+"px"),(this.settings.disabled||this.target.hasClass("disabled")||"disabled"==this.target.attr("disabled"))&&(this.trigger.addClass("ui-select-disabled"),this.disabled=!0),this.target.after(this.trigger);var s=this.trigger.find("i");s.css({top:(this.trigger.outerHeight()-s.outerHeight()/2)/2}),this.select=t(''),t("body").append(this.select),this.selectContent=this.select.children("ul"),this.format(),this.target.hide()},setData:function(t){this.model=t,this.format()},addData:function(t,e,i){if(!t)return void alert("please enter a value");for(var s in this.model)if(this.model[s].value==t)return void alert("值重复"+t);var a={value:t,text:e||t,disabled:i||!1};this.model.push(a),alert("add successfully"),this.render()},render:function(){this.format()},format:function(){var e=this;if(this.settings.model||0!=this.model.length){for(var i="",s=0,a=e.model.length;s'+e.escape(l.text)+""}"SELECT"==this.target.get(0).nodeName&&this.target.html(i)}else this.model=[],this.target.find("option").each(function(){var i={value:t(this).attr("value"),text:t(this).html(),disabled:t(this).attr("disabled")};e.model.push(i)});for(var h="",s=0,a=e.model.length;s'+l.text+""}e.selectContent.html(h),e.selectContent.children("li").height(e.h).css("lineHeight",e.h+"px");var n=this.target.val();void 0===this.target[0].value&&(n=this.target.data("value")),e.value=n,this.setValue(n)},escape:function(t){return t.toString().replace(/\'/gim,"'").replace(/\"/gim,""")},setValue:function(e,i){var s=this;this.selectContent.find("li").each(function(){if(t(this).data("value")==e){var i=i||t(this).data("text");return s.trigger.children("span").attr("title",i).text(i),s.trigger.attr("data-value",e),s.target.val(e),s.target.attr("data-value",e),s.target.attr("data-text",i),t(this).addClass("ui-select-item-selected").siblings().removeClass("ui-select-item-selected"),s.value!=e&&(s.settings.selected&&s.settings.selected.call(s,e,i),s.target.trigger("change",e)),void(s.value=e)}})},bindEvent:function(){var e=this;e.status=!1,this.trigger.on("click",function(){return e.disabled||(t(".ui-select").not("#"+e.id).trigger("hide"),e.status?e.hide():e.show()),!1}),e.target.on("set",function(t,i){e.setValue(i)}),this.select.find("li").each(function(){t(this).removeClass("ui-select-item-selected")}),this.select.on("click","li",function(){if(!t(this).hasClass("ui-select-item-disabled")){var i=t(this).data("value"),s=t(this).data("text");e.setValue(i,s),e.hide()}return!1}),this.select.on("hide",function(){e.hide()}),t(document).click(function(){e.hide()})},show:function(){this.trigger.addClass("active");var t=this,e=t.trigger[0].getBoundingClientRect();this.select.css({left:e.left,top:t.trigger.offset().top+e.bottom-e.top}).css({maxHeight:this.settings.maxHeight,maxWidth:this.settings.maxWidth||e.right-e.left,minWidth:this.w}).show(),this.status=!0},hide:function(){this.trigger.removeClass("active"),this.status=!1,this.select.hide(),this.target.trigger("blur")}},e});