| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250 |
- /**
- * EasyUI for jQuery 1.9.4
- *
- * Copyright (c) 2009-2020 www.jeasyui.com. All rights reserved.
- *
- * Licensed under the freeware license: http://www.jeasyui.com/license_freeware.php
- * To use it on other terms please contact us: info@jeasyui.com
- *
- */
- (function($){
- function _1(_2){
- var _3=$.data(_2,"timepicker");
- var _4=_3.options;
- $(_2).addClass("timepicker-f").combo($.extend({},_4,{onShowPanel:function(){
- _5(this);
- _6(_2);
- _13(_2,$(_2).timepicker("getValue"));
- }}));
- $(_2).timepicker("initValue",_4.value);
- function _5(_7){
- var _8=$(_7).timepicker("options");
- var _9=$(_7).combo("panel");
- _9._unbind(".timepicker")._bind("click.timepicker",function(e){
- if($(e.target).hasClass("datebox-button-a")){
- var _a=parseInt($(e.target).attr("datebox-button-index"));
- _8.buttons[_a].handler.call(e.target,_7);
- }
- });
- };
- function _6(_b){
- var _c=$(_b).combo("panel");
- if(_c.children("div.datebox-button").length){
- return;
- }
- var _d=$("<div class=\"datebox-button\"><table cellspacing=\"0\" cellpadding=\"0\" style=\"width:100%\"><tr></tr></table></div>").appendTo(_c);
- var tr=_d.find("tr");
- for(var i=0;i<_4.buttons.length;i++){
- var td=$("<td></td>").appendTo(tr);
- var _e=_4.buttons[i];
- var t=$("<a class=\"datebox-button-a\" href=\"javascript:;\"></a>").html($.isFunction(_e.text)?_e.text(_b):_e.text).appendTo(td);
- t.attr("datebox-button-index",i);
- }
- tr.find("td").css("width",(100/_4.buttons.length)+"%");
- };
- };
- function _f(_10,_11){
- var _12=$(_10).data("timepicker").options;
- _13(_10,_11);
- _12.value=_14(_10);
- $(_10).combo("setValue",_12.value).combo("setText",_12.value);
- };
- function _13(_15,_16){
- var _17=$(_15).data("timepicker").options;
- if(_16){
- var _18=_16.split(" ");
- var hm=_18[0].split(":");
- _17.selectingHour=parseInt(hm[0],10);
- _17.selectingMinute=parseInt(hm[1],10);
- _17.selectingAmpm=_18[1];
- }else{
- _17.selectingHour=12;
- _17.selectingMinute=0;
- _17.selectingAmpm=_17.ampm[0];
- }
- _19(_15);
- };
- function _14(_1a){
- var _1b=$(_1a).data("timepicker").options;
- var h=_1b.selectingHour;
- var m=_1b.selectingMinute;
- var _1c=_1b.selectingAmpm;
- if(!_1c){
- _1c=_1b.ampm[0];
- }
- return (h<10?"0"+h:h)+":"+(m<10?"0"+m:m)+" "+_1c;
- };
- function _19(_1d){
- var _1e=$(_1d).data("timepicker").options;
- var _1f=$(_1d).combo("panel");
- var _20=_1f.children(".timepicker-panel");
- if(!_20.length){
- var _20=$("<div class=\"timepicker-panel f-column\"></div>").prependTo(_1f);
- }
- _20.empty();
- if(_1e.panelHeight!="auto"){
- var _21=_1f.height()-_1f.find(".datebox-button").outerHeight();
- _20._outerHeight(_21);
- }
- _22(_1d);
- _23(_1d);
- _20.off(".timepicker");
- _20.on("click.timepicker",".title-hour",function(e){
- _1e.selectingType="hour";
- _19(_1d);
- }).on("click.timepicker",".title-minute",function(e){
- _1e.selectingType="minute";
- _19(_1d);
- }).on("click.timepicker",".title-am",function(e){
- _1e.selectingAmpm=_1e.ampm[0];
- _19(_1d);
- }).on("click.timepicker",".title-pm",function(e){
- _1e.selectingAmpm=_1e.ampm[1];
- _19(_1d);
- }).on("click.timepicker",".item",function(e){
- var _24=parseInt($(this).text(),10);
- if(_1e.selectingType=="hour"){
- _1e.selectingHour=_24;
- }else{
- _1e.selectingMinute=_24;
- }
- _19(_1d);
- });
- };
- function _22(_25){
- var _26=$(_25).data("timepicker").options;
- var _27=$(_25).combo("panel");
- var _28=_27.find(".timepicker-panel");
- var _29=_26.selectingHour;
- var _2a=_26.selectingMinute;
- $("<div class=\"panel-header f-noshrink f-row f-content-center\">"+"<div class=\"title title-hour\">"+(_29<10?"0"+_29:_29)+"</div>"+"<div class=\"sep\">:</div>"+"<div class=\"title title-minute\">"+(_2a<10?"0"+_2a:_2a)+"</div>"+"<div class=\"ampm f-column\">"+"<div class=\"title title-am\">"+_26.ampm[0]+"</div>"+"<div class=\"title title-pm\">"+_26.ampm[1]+"</div>"+"</div>"+"</div>").appendTo(_28);
- var _2b=_28.find(".panel-header");
- if(_26.selectingType=="hour"){
- _2b.find(".title-hour").addClass("title-selected");
- }else{
- _2b.find(".title-minute").addClass("title-selected");
- }
- if(_26.selectingAmpm==_26.ampm[0]){
- _2b.find(".title-am").addClass("title-selected");
- }
- if(_26.selectingAmpm==_26.ampm[1]){
- _2b.find(".title-pm").addClass("title-selected");
- }
- };
- function _23(_2c){
- var _2d=$(_2c).data("timepicker").options;
- var _2e=$(_2c).combo("panel");
- var _2f=_2e.find(".timepicker-panel");
- var _30=$("<div class=\"clock-wrap f-full f-column f-content-center\">"+"</div>").appendTo(_2f);
- var _31=_30.outerWidth();
- var _32=_30.outerHeight();
- var _33=Math.min(_31,_32)-20;
- var _34=_33/2;
- _31=_33;
- _32=_33;
- var _35=_2d.selectingType=="hour"?_2d.selectingHour:_2d.selectingMinute;
- var _36=_35/(_2d.selectingType=="hour"?12:60)*360;
- _36=parseFloat(_36).toFixed(4);
- var _37={transform:"rotate("+_36+"deg)"};
- var _38={width:_31+"px",height:_32+"px",marginLeft:-_31/2+"px",marginTop:-_32/2+"px"};
- var _39=[];
- _39.push("<div class=\"clock\">");
- _39.push("<div class=\"center\"></div>");
- _39.push("<div class=\"hand\">");
- _39.push("<div class=\"drag\"></div>");
- _39.push("</div>");
- var _3a=_3b();
- for(var i=0;i<_3a.length;i++){
- var _3c=_3a[i];
- var cls="item f-column f-content-center";
- if(_3c==_35){
- cls+=" item-selected";
- }
- var _36=_3c/(_2d.selectingType=="hour"?12:60)*360*Math.PI/180;
- var x=(_34-20)*Math.sin(_36);
- var y=-(_34-20)*Math.cos(_36);
- _36=parseFloat(_36).toFixed(4);
- x=parseFloat(x).toFixed(4);
- y=parseFloat(y).toFixed(4);
- var _3d={transform:"translate("+x+"px,"+y+"px)"};
- var _3d="transform:translate("+x+"px,"+y+"px)";
- _39.push("<div class=\""+cls+"\" style=\""+_3d+"\">"+_3c+"</div>");
- }
- _39.push("</div>");
- _30.html(_39.join(""));
- _30.find(".clock").css(_38);
- _30.find(".hand").css(_37);
- function _3b(){
- var _3e=[];
- if(_2d.selectingType=="hour"){
- for(var i=0;i<12;i++){
- _3e.push(String(i));
- }
- _3e[0]="12";
- }else{
- for(var i=0;i<60;i+=5){
- _3e.push(i<10?"0"+i:String(i));
- }
- _3e[0]="00";
- }
- return _3e;
- };
- };
- $.fn.timepicker=function(_3f,_40){
- if(typeof _3f=="string"){
- var _41=$.fn.timepicker.methods[_3f];
- if(_41){
- return _41(this,_40);
- }else{
- return this.combo(_3f,_40);
- }
- }
- _3f=_3f||{};
- return this.each(function(){
- var _42=$.data(this,"timepicker");
- if(_42){
- $.extend(_42.options,_3f);
- }else{
- $.data(this,"timepicker",{options:$.extend({},$.fn.timepicker.defaults,$.fn.timepicker.parseOptions(this),_3f)});
- }
- _1(this);
- });
- };
- $.fn.timepicker.methods={options:function(jq){
- var _43=jq.combo("options");
- return $.extend($.data(jq[0],"timepicker").options,{width:_43.width,height:_43.height,originalValue:_43.originalValue,disabled:_43.disabled,readonly:_43.readonly});
- },initValue:function(jq,_44){
- return jq.each(function(){
- var _45=$(this).timepicker("options");
- _45.value=_44;
- _13(this,_44);
- if(_44){
- _45.value=_14(this);
- $(this).combo("initValue",_45.value).combo("setText",_45.value);
- }
- });
- },setValue:function(jq,_46){
- return jq.each(function(){
- _f(this,_46);
- });
- },reset:function(jq){
- return jq.each(function(){
- var _47=$(this).timepicker("options");
- $(this).timepicker("setValue",_47.originalValue);
- });
- }};
- $.fn.timepicker.parseOptions=function(_48){
- return $.extend({},$.fn.combo.parseOptions(_48),$.parser.parseOptions(_48,[]));
- };
- $.fn.timepicker.defaults=$.extend({},$.fn.combo.defaults,{closeText:"Close",okText:"Ok",buttons:[{text:function(_49){
- return $(_49).timepicker("options").okText;
- },handler:function(_4a){
- $(_4a).timepicker("setValue",_14(_4a));
- $(this).closest("div.combo-panel").panel("close");
- }},{text:function(_4b){
- return $(_4b).timepicker("options").closeText;
- },handler:function(_4c){
- $(this).closest("div.combo-panel").panel("close");
- }}],editable:false,ampm:["am","pm"],value:"",selectingHour:12,selectingMinute:0,selectingType:"hour"});
- })(jQuery);
|