jquery.dialog.js 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. /**
  2. * jQuery EasyUI 1.4.4
  3. *
  4. * Copyright (c) 2009-2015 www.jeasyui.com. All rights reserved.
  5. *
  6. * Licensed under the freeware license: http://www.jeasyui.com/license_freeware.php
  7. * To use it on other terms please contact us: info@jeasyui.com
  8. *
  9. */
  10. (function($){
  11. function _1(_2){
  12. var _3=$.data(_2,"dialog").options;
  13. _3.inited=false;
  14. $(_2).window($.extend({},_3,{onResize:function(w,h){
  15. if(_3.inited){
  16. _b(this);
  17. _3.onResize.call(this,w,h);
  18. }
  19. }}));
  20. var _4=$(_2).window("window");
  21. if(_3.toolbar){
  22. if($.isArray(_3.toolbar)){
  23. $(_2).siblings("div.dialog-toolbar").remove();
  24. var _5=$("<div class=\"dialog-toolbar\"><table cellspacing=\"0\" cellpadding=\"0\"><tr></tr></table></div>").appendTo(_4);
  25. var tr=_5.find("tr");
  26. for(var i=0;i<_3.toolbar.length;i++){
  27. var _6=_3.toolbar[i];
  28. if(_6=="-"){
  29. $("<td><div class=\"dialog-tool-separator\"></div></td>").appendTo(tr);
  30. }else{
  31. var td=$("<td></td>").appendTo(tr);
  32. var _7=$("<a href=\"javascript:void(0)\"></a>").appendTo(td);
  33. _7[0].onclick=eval(_6.handler||function(){
  34. });
  35. _7.linkbutton($.extend({},_6,{plain:true}));
  36. }
  37. }
  38. }else{
  39. $(_3.toolbar).addClass("dialog-toolbar").appendTo(_4);
  40. $(_3.toolbar).show();
  41. }
  42. }else{
  43. $(_2).siblings("div.dialog-toolbar").remove();
  44. }
  45. if(_3.buttons){
  46. if($.isArray(_3.buttons)){
  47. $(_2).siblings("div.dialog-button").remove();
  48. var _8=$("<div class=\"dialog-button\"></div>").appendTo(_4);
  49. for(var i=0;i<_3.buttons.length;i++){
  50. var p=_3.buttons[i];
  51. var _9=$("<a href=\"javascript:void(0)\"></a>").appendTo(_8);
  52. if(p.handler){
  53. _9[0].onclick=p.handler;
  54. }
  55. _9.linkbutton(p);
  56. }
  57. }else{
  58. $(_3.buttons).addClass("dialog-button").appendTo(_4);
  59. $(_3.buttons).show();
  60. }
  61. }else{
  62. $(_2).siblings("div.dialog-button").remove();
  63. }
  64. _3.inited=true;
  65. var _a=_3.closed;
  66. _4.show();
  67. $(_2).window("resize");
  68. if(_a){
  69. _4.hide();
  70. }
  71. };
  72. function _b(_c,_d){
  73. var t=$(_c);
  74. var _e=t.dialog("options");
  75. var _f=_e.noheader;
  76. var tb=t.siblings(".dialog-toolbar");
  77. var bb=t.siblings(".dialog-button");
  78. tb.insertBefore(_c).css({position:"relative",borderTopWidth:(_f?1:0),top:(_f?tb.length:0)});
  79. bb.insertAfter(_c).css({position:"relative",top:-1});
  80. tb.add(bb)._outerWidth(t._outerWidth()).find(".easyui-fluid:visible").each(function(){
  81. $(this).triggerHandler("_resize");
  82. });
  83. var _10=tb._outerHeight()+bb._outerHeight();
  84. if(!isNaN(parseInt(_e.height))){
  85. t._outerHeight(t._outerHeight()-_10);
  86. }else{
  87. var _11=t._size("min-height");
  88. if(_11){
  89. t._size("min-height",_11-_10);
  90. }
  91. var _12=t._size("max-height");
  92. if(_12){
  93. t._size("max-height",_12-_10);
  94. }
  95. }
  96. var _13=$.data(_c,"window").shadow;
  97. if(_13){
  98. var cc=t.panel("panel");
  99. _13.css({width:cc._outerWidth(),height:cc._outerHeight()});
  100. }
  101. };
  102. $.fn.dialog=function(_14,_15){
  103. if(typeof _14=="string"){
  104. var _16=$.fn.dialog.methods[_14];
  105. if(_16){
  106. return _16(this,_15);
  107. }else{
  108. return this.window(_14,_15);
  109. }
  110. }
  111. _14=_14||{};
  112. return this.each(function(){
  113. var _17=$.data(this,"dialog");
  114. if(_17){
  115. $.extend(_17.options,_14);
  116. }else{
  117. $.data(this,"dialog",{options:$.extend({},$.fn.dialog.defaults,$.fn.dialog.parseOptions(this),_14)});
  118. }
  119. _1(this);
  120. });
  121. };
  122. $.fn.dialog.methods={options:function(jq){
  123. var _18=$.data(jq[0],"dialog").options;
  124. var _19=jq.panel("options");
  125. $.extend(_18,{width:_19.width,height:_19.height,left:_19.left,top:_19.top,closed:_19.closed,collapsed:_19.collapsed,minimized:_19.minimized,maximized:_19.maximized});
  126. return _18;
  127. },dialog:function(jq){
  128. return jq.window("window");
  129. }};
  130. $.fn.dialog.parseOptions=function(_1a){
  131. var t=$(_1a);
  132. return $.extend({},$.fn.window.parseOptions(_1a),$.parser.parseOptions(_1a,["toolbar","buttons"]),{toolbar:(t.children(".dialog-toolbar").length?t.children(".dialog-toolbar").removeClass("dialog-toolbar"):undefined),buttons:(t.children(".dialog-button").length?t.children(".dialog-button").removeClass("dialog-button"):undefined)});
  133. };
  134. $.fn.dialog.defaults=$.extend({},$.fn.window.defaults,{title:"New Dialog",collapsible:false,minimizable:false,maximizable:false,resizable:false,toolbar:null,buttons:null});
  135. })(jQuery);