Brak opisu

globalctrl.js 9.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187
  1. //function document.onkeypress() {
  2. document.onkeypress = function () {
  3. var event = window.event;
  4. if (event.ctrlKey && event.keyCode == 80) {
  5. event.keyCode = 0;
  6. return false;
  7. }
  8. }
  9. document.onkeydown = document.onkeypress;
  10. //function window.onerror() {
  11. // return false;
  12. //}
  13. function killErrors() {
  14. return true;
  15. }
  16. window.onerror = killErrors;
  17. //function document.oncontextmenu() {
  18. // var s = event.srcElement.tagName;
  19. // event.returnValue =
  20. // (!event.srcElement.disabled &&
  21. // (document.selection.createRange().text.length > 0 ||
  22. // s == "TEXTAREA" ||
  23. // s == "INPUT" && event.srcElement.type == "text"));
  24. //}
  25. //function document.onselectstart() {
  26. // var s = event.srcElement.tagName;
  27. // if (s != "INPUT" && s != "TEXTAREA") event.returnValue = false;
  28. //}
  29. function MM_findObj(n, d) { //v4.01
  30. var p, i, x;
  31. if (!d) d = document;
  32. if ((p = n.indexOf("?")) > 0 && parent.frames.length) {
  33. d = parent.frames[n.substring(p + 1)].document; n = n.substring(0, p);
  34. }
  35. if (!(x = d[n]) && d.all)
  36. x = d.all[n];
  37. for (i = 0; !x && i < d.forms.length; i++) x = d.forms[i][n];
  38. for (i = 0; !x && d.layers && i < d.layers.length; i++) x = MM_findObj(n, d.layers[i].document);
  39. if (!x && d.getElementById) x = d.getElementById(n); return x;
  40. }
  41. function MM_dragLayer(objName, x, hL, hT, hW, hH, toFront, dropBack, cU, cD, cL, cR, targL, targT, tol, dropJS, et, dragJS) { //v4.01
  42. //Copyright 1998 Macromedia, Inc. All rights reserved.
  43. var i, j, aLayer, retVal, curDrag = null, curLeft, curTop, IE = document.all, NS4 = document.layers;
  44. var NS6 = (!IE && document.getElementById), NS = (NS4 || NS6);
  45. if (!IE && !NS) return false;
  46. retVal = true;
  47. if (IE && event) event.returnValue = true;
  48. if (MM_dragLayer.arguments.length > 1) {
  49. curDrag = MM_findObj(objName);
  50. if (!curDrag) return false;
  51. if (!document.allLayers) {
  52. document.allLayers = new Array();
  53. with (document) if (NS4) {
  54. for (i = 0; i < layers.length; i++)
  55. allLayers[i] = layers[i];
  56. for (i = 0; i < allLayers.length; i++)
  57. if (allLayers[i].document && allLayers[i].document.layers)
  58. with (allLayers[i].document)
  59. for (j = 0; j < layers.length; j++) allLayers[allLayers.length] = layers[j];
  60. }
  61. else {
  62. if (NS6) {
  63. var spns = getElementsByTagName("span"); var all = getElementsByTagName("div");
  64. for (i = 0; i < spns.length; i++) if (spns[i].style && spns[i].style.position) allLayers[allLayers.length] = spns[i];
  65. }
  66. for (i = 0; i < all.length; i++) if (all[i].style && all[i].style.position) allLayers[allLayers.length] = all[i];
  67. }
  68. }
  69. curDrag.MM_dragOk = true;
  70. curDrag.MM_targL = targL;
  71. curDrag.MM_targT = targT;
  72. curDrag.MM_tol = Math.pow(tol, 2);
  73. curDrag.MM_hLeft = hL;
  74. curDrag.MM_hTop = hT;
  75. curDrag.MM_hWidth = hW;
  76. curDrag.MM_hHeight = hH;
  77. curDrag.MM_toFront = toFront;
  78. curDrag.MM_dropBack = dropBack;
  79. curDrag.MM_dropJS = dropJS;
  80. curDrag.MM_everyTime = et;
  81. curDrag.MM_dragJS = dragJS;
  82. curDrag.MM_oldZ = (NS4) ? curDrag.zIndex : curDrag.style.zIndex;
  83. curLeft = (NS4) ? curDrag.left : (NS6) ? parseInt(curDrag.style.left) : curDrag.style.pixelLeft;
  84. if (String(curLeft) == "NaN") curLeft = 0; curDrag.MM_startL = curLeft;
  85. curTop = (NS4) ? curDrag.top : (NS6) ? parseInt(curDrag.style.top) : curDrag.style.pixelTop;
  86. if (String(curTop) == "NaN") curTop = 0; curDrag.MM_startT = curTop;
  87. curDrag.MM_bL = (cL < 0) ? null : curLeft - cL; curDrag.MM_bT = (cU < 0) ? null : curTop - cU;
  88. curDrag.MM_bR = (cR < 0) ? null : curLeft + cR; curDrag.MM_bB = (cD < 0) ? null : curTop + cD;
  89. curDrag.MM_LEFTRIGHT = 0; curDrag.MM_UPDOWN = 0; curDrag.MM_SNAPPED = false; //use in your JS!
  90. document.onmousedown = MM_dragLayer; document.onmouseup = MM_dragLayer;
  91. if (NS) document.captureEvents(Event.MOUSEDOWN | Event.MOUSEUP);
  92. } else {
  93. var theEvent = ((NS) ? objName.type : event.type);
  94. if (theEvent == 'mousedown') {
  95. var mouseX = (NS) ? objName.pageX : event.clientX + document.body.scrollLeft;
  96. var mouseY = (NS) ? objName.pageY : event.clientY + document.body.scrollTop;
  97. var maxDragZ = null; document.MM_maxZ = 0;
  98. for (i = 0; i < document.allLayers.length; i++) {
  99. aLayer = document.allLayers[i];
  100. var aLayerZ = (NS4) ? aLayer.zIndex : parseInt(aLayer.style.zIndex);
  101. if (aLayerZ > document.MM_maxZ) document.MM_maxZ = aLayerZ;
  102. var isVisible = (((NS4) ? aLayer.visibility : aLayer.style.visibility).indexOf('hid') == -1);
  103. if (aLayer.MM_dragOk != null && isVisible) with (aLayer) {
  104. var parentL = 0; var parentT = 0;
  105. if (NS6) {
  106. parentLayer = aLayer.parentNode;
  107. while (parentLayer != null && parentLayer.style.position) {
  108. parentL += parseInt(parentLayer.offsetLeft); parentT += parseInt(parentLayer.offsetTop);
  109. parentLayer = parentLayer.parentNode;
  110. }
  111. } else if (IE) {
  112. parentLayer = aLayer.parentElement;
  113. while (parentLayer != null && parentLayer.style.position) {
  114. parentL += parentLayer.offsetLeft; parentT += parentLayer.offsetTop;
  115. parentLayer = parentLayer.parentElement;
  116. }
  117. }
  118. var tmpX = mouseX - (((NS4) ? pageX : ((NS6) ? parseInt(style.left) : style.pixelLeft) + parentL) + MM_hLeft);
  119. var tmpY = mouseY - (((NS4) ? pageY : ((NS6) ? parseInt(style.top) : style.pixelTop) + parentT) + MM_hTop);
  120. if (String(tmpX) == "NaN") tmpX = 0; if (String(tmpY) == "NaN") tmpY = 0;
  121. var tmpW = MM_hWidth; if (tmpW <= 0) tmpW += ((NS4) ? clip.width : offsetWidth);
  122. var tmpH = MM_hHeight; if (tmpH <= 0) tmpH += ((NS4) ? clip.height : offsetHeight);
  123. if ((0 <= tmpX && tmpX < tmpW && 0 <= tmpY && tmpY < tmpH) && (maxDragZ == null
  124. || maxDragZ <= aLayerZ)) { curDrag = aLayer; maxDragZ = aLayerZ; }
  125. }
  126. }
  127. if (curDrag) {
  128. document.onmousemove = MM_dragLayer; if (NS4) document.captureEvents(Event.MOUSEMOVE);
  129. curLeft = (NS4) ? curDrag.left : (NS6) ? parseInt(curDrag.style.left) : curDrag.style.pixelLeft;
  130. curTop = (NS4) ? curDrag.top : (NS6) ? parseInt(curDrag.style.top) : curDrag.style.pixelTop;
  131. if (String(curLeft) == "NaN") curLeft = 0; if (String(curTop) == "NaN") curTop = 0;
  132. MM_oldX = mouseX - curLeft; MM_oldY = mouseY - curTop;
  133. document.MM_curDrag = curDrag; curDrag.MM_SNAPPED = false;
  134. if (curDrag.MM_toFront) {
  135. eval('curDrag.' + ((NS4) ? '' : 'style.') + 'zIndex=document.MM_maxZ+1');
  136. if (!curDrag.MM_dropBack) document.MM_maxZ++;
  137. }
  138. retVal = false; if (!NS4 && !NS6) event.returnValue = false;
  139. }
  140. } else if (theEvent == 'mousemove') {
  141. if (document.MM_curDrag) with (document.MM_curDrag) {
  142. var mouseX = (NS) ? objName.pageX : event.clientX + document.body.scrollLeft;
  143. var mouseY = (NS) ? objName.pageY : event.clientY + document.body.scrollTop;
  144. newLeft = mouseX - MM_oldX; newTop = mouseY - MM_oldY;
  145. if (MM_bL != null) newLeft = Math.max(newLeft, MM_bL);
  146. if (MM_bR != null) newLeft = Math.min(newLeft, MM_bR);
  147. if (MM_bT != null) newTop = Math.max(newTop, MM_bT);
  148. if (MM_bB != null) newTop = Math.min(newTop, MM_bB);
  149. MM_LEFTRIGHT = newLeft - MM_startL; MM_UPDOWN = newTop - MM_startT;
  150. if (NS4) { left = newLeft; top = newTop; }
  151. else if (NS6) { style.left = newLeft; style.top = newTop; }
  152. else { style.pixelLeft = newLeft; style.pixelTop = newTop; }
  153. if (MM_dragJS) eval(MM_dragJS);
  154. retVal = false; if (!NS) event.returnValue = false;
  155. }
  156. } else if (theEvent == 'mouseup') {
  157. document.onmousemove = null;
  158. if (NS) document.releaseEvents(Event.MOUSEMOVE);
  159. if (NS) document.captureEvents(Event.MOUSEDOWN); //for mac NS
  160. if (document.MM_curDrag) with (document.MM_curDrag) {
  161. if (typeof MM_targL == 'number' && typeof MM_targT == 'number' &&
  162. (Math.pow(MM_targL - ((NS4) ? left : (NS6) ? parseInt(style.left) : style.pixelLeft), 2) +
  163. Math.pow(MM_targT - ((NS4) ? top : (NS6) ? parseInt(style.top) : style.pixelTop), 2)) <= MM_tol) {
  164. if (NS4) { left = MM_targL; top = MM_targT; }
  165. else if (NS6) { style.left = MM_targL; style.top = MM_targT; }
  166. else { style.pixelLeft = MM_targL; style.pixelTop = MM_targT; }
  167. MM_SNAPPED = true; MM_LEFTRIGHT = MM_startL - MM_targL; MM_UPDOWN = MM_startT - MM_targT;
  168. }
  169. if (MM_everyTime || MM_SNAPPED) eval(MM_dropJS);
  170. if (MM_dropBack) { if (NS4) zIndex = MM_oldZ; else style.zIndex = MM_oldZ; }
  171. retVal = false; if (!NS) event.returnValue = false;
  172. }
  173. document.MM_curDrag = null;
  174. }
  175. if (NS) document.routeEvent(objName);
  176. } return retVal;
  177. }