jquery.dialog.js 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. /**
  2. * jQuery EasyUI 1.3.6
  3. *
  4. * Copyright (c) 2009-2014 www.jeasyui.com. All rights reserved.
  5. *
  6. * Licensed under the GPL license: http://www.gnu.org/licenses/gpl.txt
  7. * To use it on other terms please contact us at info@jeasyui.com
  8. *
  9. */
  10. (function($){
  11. function _1(_2){
  12. var cp=document.createElement("div");
  13. while(_2.firstChild){
  14. cp.appendChild(_2.firstChild);
  15. }
  16. _2.appendChild(cp);
  17. var _3=$(cp);
  18. _3.attr("style",$(_2).attr("style"));
  19. $(_2).removeAttr("style").css("overflow","hidden");
  20. _3.panel({border:false,doSize:false,bodyCls:"dialog-content"});
  21. return _3;
  22. };
  23. function _4(_5){
  24. var _6=$.data(_5,"dialog").options;
  25. var _7=$.data(_5,"dialog").contentPanel;
  26. if(_6.toolbar){
  27. if($.isArray(_6.toolbar)){
  28. $(_5).find("div.dialog-toolbar").remove();
  29. var _8=$("<div class=\"dialog-toolbar\"><table cellspacing=\"0\" cellpadding=\"0\"><tr></tr></table></div>").prependTo(_5);
  30. var tr=_8.find("tr");
  31. for(var i=0;i<_6.toolbar.length;i++){
  32. var _9=_6.toolbar[i];
  33. if(_9=="-"){
  34. $("<td><div class=\"dialog-tool-separator\"></div></td>").appendTo(tr);
  35. }else{
  36. var td=$("<td></td>").appendTo(tr);
  37. var _a=$("<a href=\"javascript:void(0)\"></a>").appendTo(td);
  38. _a[0].onclick=eval(_9.handler||function(){
  39. });
  40. _a.linkbutton($.extend({},_9,{plain:true}));
  41. }
  42. }
  43. }else{
  44. $(_6.toolbar).addClass("dialog-toolbar").prependTo(_5);
  45. $(_6.toolbar).show();
  46. }
  47. }else{
  48. $(_5).find("div.dialog-toolbar").remove();
  49. }
  50. if(_6.buttons){
  51. if($.isArray(_6.buttons)){
  52. $(_5).find("div.dialog-button").remove();
  53. var _b=$("<div class=\"dialog-button\"></div>").appendTo(_5);
  54. for(var i=0;i<_6.buttons.length;i++){
  55. var p=_6.buttons[i];
  56. var _c=$("<a href=\"javascript:void(0)\"></a>").appendTo(_b);
  57. if(p.handler){
  58. _c[0].onclick=p.handler;
  59. }
  60. _c.linkbutton(p);
  61. }
  62. }else{
  63. $(_6.buttons).addClass("dialog-button").appendTo(_5);
  64. $(_6.buttons).show();
  65. }
  66. }else{
  67. $(_5).find("div.dialog-button").remove();
  68. }
  69. var _d=_6.href;
  70. var _e=_6.content;
  71. _6.href=null;
  72. _6.content=null;
  73. _7.panel({closed:_6.closed,cache:_6.cache,href:_d,content:_e,onLoad:function(){
  74. if(_6.height=="auto"){
  75. $(_5).window("resize");
  76. }
  77. _6.onLoad.apply(_5,arguments);
  78. }});
  79. $(_5).window($.extend({},_6,{onOpen:function(){
  80. if(_7.panel("options").closed){
  81. _7.panel("open");
  82. }
  83. if(_6.onOpen){
  84. _6.onOpen.call(_5);
  85. }
  86. },onResize:function(_f,_10){
  87. var _11=$(_5);
  88. _7.panel("panel").show();
  89. _7.panel("resize",{width:_11.width(),height:(_10=="auto")?"auto":_11.height()-_11.children("div.dialog-toolbar")._outerHeight()-_11.children("div.dialog-button")._outerHeight()});
  90. if(_6.onResize){
  91. _6.onResize.call(_5,_f,_10);
  92. }
  93. }}));
  94. _6.href=_d;
  95. _6.content=_e;
  96. };
  97. function _12(_13,_14){
  98. var _15=$.data(_13,"dialog").contentPanel;
  99. _15.panel("refresh",_14);
  100. };
  101. $.fn.dialog=function(_16,_17){
  102. if(typeof _16=="string"){
  103. var _18=$.fn.dialog.methods[_16];
  104. if(_18){
  105. return _18(this,_17);
  106. }else{
  107. return this.window(_16,_17);
  108. }
  109. }
  110. _16=_16||{};
  111. return this.each(function(){
  112. var _19=$.data(this,"dialog");
  113. if(_19){
  114. $.extend(_19.options,_16);
  115. }else{
  116. $.data(this,"dialog",{options:$.extend({},$.fn.dialog.defaults,$.fn.dialog.parseOptions(this),_16),contentPanel:_1(this)});
  117. }
  118. _4(this);
  119. });
  120. };
  121. $.fn.dialog.methods={options:function(jq){
  122. var _1a=$.data(jq[0],"dialog").options;
  123. var _1b=jq.panel("options");
  124. $.extend(_1a,{closed:_1b.closed,collapsed:_1b.collapsed,minimized:_1b.minimized,maximized:_1b.maximized});
  125. var _1c=$.data(jq[0],"dialog").contentPanel;
  126. return _1a;
  127. },dialog:function(jq){
  128. return jq.window("window");
  129. },refresh:function(jq,_1d){
  130. return jq.each(function(){
  131. _12(this,_1d);
  132. });
  133. }};
  134. $.fn.dialog.parseOptions=function(_1e){
  135. return $.extend({},$.fn.window.parseOptions(_1e),$.parser.parseOptions(_1e,["toolbar","buttons"]));
  136. };
  137. $.fn.dialog.defaults=$.extend({},$.fn.window.defaults,{title:"New Dialog",collapsible:false,minimizable:false,maximizable:false,resizable:false,toolbar:null,buttons:null});
  138. })(jQuery);