| 1 | // ¥µ¥¤¥º´ÉÍý¥¯¥é¥¹¤ÎÄêµÁ |
|---|
| 2 | function SC_Size() { |
|---|
| 3 | this.id = ''; // ID |
|---|
| 4 | this.left = 0; // ÇÛÃÖ¤¹¤ëY¼´ºÂɸ |
|---|
| 5 | this.top = 0; // ÇÛÃÖ¤¹¤ëX¼´ºÂɸ |
|---|
| 6 | this.width = 0; // ¥ª¥Ö¥¸¥§¥¯¥È¤ÎÉý |
|---|
| 7 | this.height = 0; // ¥ª¥Ö¥¸¥§¥¯¥È¤Î¹â¤µ |
|---|
| 8 | this.target_id = ''; // ÇÛÃÖ¾ì½ê¡Êº¸¥Ê¥Ó¤È¤«¡Ë |
|---|
| 9 | this.margin = 10; // ¾å¤Î¥ª¥Ö¥¸¥§¥¯¥È¤È¤ÎÉý |
|---|
| 10 | this.obj; |
|---|
| 11 | }; |
|---|
| 12 | |
|---|
| 13 | // ÊÑ¿ôÀë¸À |
|---|
| 14 | var defUnused = 500; // ̤»ÈÍÑÎΰè¤Î¥Ç¥Õ¥©¥ë¥È¤Î¹â¤µ |
|---|
| 15 | var defNavi = 400; // º¸±¦¥Ê¥Ó¤Î¥Ç¥Õ¥©¥ë¥È¤Î¹â¤µ |
|---|
| 16 | var defMainNavi = 100; // ¥á¥¤¥ó¾å²¼¤Î¥Ç¥Õ¥©¥ë¥È¤Î¹â¤µ |
|---|
| 17 | var defMain = 200; // ¥á¥¤¥ó¤Î¥Ç¥Õ¥©¥ë¥È¤Î¹â¤µ |
|---|
| 18 | |
|---|
| 19 | var NowMaxHeight = 0; // ¸½ºß¤ÎºÇÂç¤Î¹â¤µ |
|---|
| 20 | var MainHeight = 200; |
|---|
| 21 | |
|---|
| 22 | var marginUnused = 688; // ̤»ÈÍÑÎΰè¤Îº¸¥Þ¡¼¥¸¥ó |
|---|
| 23 | var marginLeftNavi = 180; // º¸¥Ê¥Ó¤Îº¸¥Þ¡¼¥¸¥ó |
|---|
| 24 | var marginRightNavi = 512; // ±¦¥Ê¥Ó¤Îº¸¥Þ¡¼¥¸¥ó |
|---|
| 25 | var marginMain = 348; // ¥á¥¤¥ó¾å²¼¤Îº¸¥Þ¡¼¥¸¥ó |
|---|
| 26 | var marginMainFootTop= 595; // ¥á¥¤¥ó²¼¤Î¾å¥Þ¡¼¥¸¥ó |
|---|
| 27 | |
|---|
| 28 | var gDragged = ""; // ¥É¥é¥Ã¥°Ã楪¥Ö¥¸¥§¥¯¥È |
|---|
| 29 | var gDropTarget = ""; // ¥É¥é¥Ã¥°³«»Ï»þ¤ÎDropTarget |
|---|
| 30 | |
|---|
| 31 | var arrObj = new Object(); // ¥Ö¥í¥Ã¥¯¥ª¥Ö¥¸¥§¥¯¥È³ÊǼÍÑ |
|---|
| 32 | |
|---|
| 33 | var mouseFlg = false; |
|---|
| 34 | |
|---|
| 35 | var all_elms; // div¥¿¥°¥ª¥Ö¥¸¥§¥¯¥È³ÊǼÍÑ |
|---|
| 36 | |
|---|
| 37 | // ¥¦¥£¥ó¥É¥¦¥µ¥¤¥º |
|---|
| 38 | var scrX; |
|---|
| 39 | var scrY; |
|---|
| 40 | |
|---|
| 41 | // ¥¤¥Ù¥ó¥È¤Î´ØÏ¢ÉÕ¤±¤ò¹Ô¤¦ |
|---|
| 42 | function addEvent( elm, evtType, fn, useCapture) { |
|---|
| 43 | |
|---|
| 44 | if (elm.addEventListener) { |
|---|
| 45 | elm.addEventListener(evtType, fn, useCapture); |
|---|
| 46 | return true; |
|---|
| 47 | |
|---|
| 48 | } |
|---|
| 49 | else if (elm.attachEvent) { |
|---|
| 50 | |
|---|
| 51 | var r = elm.attachEvent('on' + evtType, fn); |
|---|
| 52 | return r; |
|---|
| 53 | |
|---|
| 54 | } |
|---|
| 55 | else { |
|---|
| 56 | elm['on'+evtType] = fn; |
|---|
| 57 | |
|---|
| 58 | } |
|---|
| 59 | |
|---|
| 60 | } |
|---|
| 61 | |
|---|
| 62 | |
|---|
| 63 | // ¥¤¥Ù¥ó¥È¤Î´ØÏ¢ÉÕ¤±¤ò²ò½ü |
|---|
| 64 | function removeEvent( elm, evtType, fn, useCapture) { |
|---|
| 65 | |
|---|
| 66 | if (elm.removeEventListener) { |
|---|
| 67 | |
|---|
| 68 | elm.removeEventListener(evtType, fn, useCapture); |
|---|
| 69 | return true; |
|---|
| 70 | |
|---|
| 71 | } |
|---|
| 72 | else if (elm.detachEvent) { |
|---|
| 73 | |
|---|
| 74 | var r = elm.detachEvent('on' + evtType, fn); |
|---|
| 75 | return r; |
|---|
| 76 | |
|---|
| 77 | } |
|---|
| 78 | else { |
|---|
| 79 | |
|---|
| 80 | elm['on'+evtType] = fn; |
|---|
| 81 | |
|---|
| 82 | } |
|---|
| 83 | |
|---|
| 84 | } |
|---|
| 85 | |
|---|
| 86 | // ¥Þ¥¦¥¹¥«¡¼¥½¥ë¤òÊѹ¹ |
|---|
| 87 | function setCursor ( elm, curtype ) { |
|---|
| 88 | elm.style.cursor = curtype; |
|---|
| 89 | } |
|---|
| 90 | |
|---|
| 91 | // ¥ª¥Ö¥¸¥§¥¯¥È¤ÎÆ©ÌÀÅÙ¤òÊѹ¹ |
|---|
| 92 | function setOpacity(node,val) { |
|---|
| 93 | |
|---|
| 94 | if (node.filters) { |
|---|
| 95 | node.filters["alpha"].opacity = val*100; |
|---|
| 96 | } else if (node.style.opacity) { |
|---|
| 97 | node.style.opacity = val; |
|---|
| 98 | } |
|---|
| 99 | } |
|---|
| 100 | |
|---|
| 101 | // Zindex¤òÊѹ¹¤¹¤ë¡ÊÁ°ÌÌɽ¼¨ÀÚÂØ¡Ë |
|---|
| 102 | function setZindex(node, val) { |
|---|
| 103 | node.style.zIndex = val; |
|---|
| 104 | // alert(val); |
|---|
| 105 | } |
|---|
| 106 | |
|---|
| 107 | // Ãͤò¼èÆÀ |
|---|
| 108 | function getAttrValue ( elm, attrname ) { |
|---|
| 109 | if (typeof(elm.attributes[ attrname ]) != 'undefined') { |
|---|
| 110 | return elm.attributes[ attrname ].nodeValue; |
|---|
| 111 | } |
|---|
| 112 | } |
|---|
| 113 | |
|---|
| 114 | // Ãͤò¥»¥Ã¥È |
|---|
| 115 | function setAttrValue ( elm, attrname, val ) { |
|---|
| 116 | elm.attributes[ attrname ].nodeValue = val; |
|---|
| 117 | } |
|---|
| 118 | |
|---|
| 119 | // ¥ª¥Ö¥¸¥§¥¯¥È¤ÎXºÂɸ¤ò¼èÆÀ |
|---|
| 120 | function getX ( elm ) { |
|---|
| 121 | // return parseInt(elm.style.left); |
|---|
| 122 | return parseInt(elm.offsetLeft); |
|---|
| 123 | } |
|---|
| 124 | |
|---|
| 125 | // ¥ª¥Ö¥¸¥§¥¯¥È¤ÎYºÂɸ¤ò¼èÆÀ |
|---|
| 126 | function getY ( elm ) { |
|---|
| 127 | return parseInt(elm.offsetTop); |
|---|
| 128 | // return parseInt(elm.style.top); |
|---|
| 129 | } |
|---|
| 130 | |
|---|
| 131 | // XºÂɸ¤ò¼èÆÀ |
|---|
| 132 | function getEventX ( evt ) { |
|---|
| 133 | return evt.clientX ? evt.clientX : evt.pageX; |
|---|
| 134 | } |
|---|
| 135 | |
|---|
| 136 | // YºÂɸ¤ò¼èÆÀ |
|---|
| 137 | function getEventY ( evt ) { |
|---|
| 138 | return evt.clientY ? evt.clientY : evt.pageY; |
|---|
| 139 | } |
|---|
| 140 | |
|---|
| 141 | // ¥ª¥Ö¥¸¥§¥¯¥È¤ÎÉý¤ò¼èÆÀ |
|---|
| 142 | function getWidth ( elm ) { |
|---|
| 143 | return parseInt( elm.style.width ); |
|---|
| 144 | } |
|---|
| 145 | |
|---|
| 146 | // ¥ª¥Ö¥¸¥§¥¯¥È¤Î¹â¤µ¤ò¼èÆÀ |
|---|
| 147 | function getHeight ( elm ) { |
|---|
| 148 | // return parseInt( elm.style.height ); |
|---|
| 149 | return parseInt( elm.offsetHeight ); |
|---|
| 150 | } |
|---|
| 151 | |
|---|
| 152 | // ¥Ú¡¼¥¸¤Î²Ä»ëÎΰè¤ÎXºÂɸ¤ò¼èÆÀ¤¹¤ë |
|---|
| 153 | function getPageScrollX() |
|---|
| 154 | { |
|---|
| 155 | var x = 0; |
|---|
| 156 | |
|---|
| 157 | if (document.body && document.body.scrollLeft != null) { |
|---|
| 158 | x = document.body.scrollLeft; |
|---|
| 159 | } else if (document.documentElement && document.documentElement.scrollLeft != null) { |
|---|
| 160 | x = document.documentElement.scrollLeft; |
|---|
| 161 | } else if (window.scrollX != null) { |
|---|
| 162 | x = window.scrollX; |
|---|
| 163 | } else if (window.pageXOffset != null) { |
|---|
| 164 | x = window.pageXOffset; |
|---|
| 165 | } |
|---|
| 166 | |
|---|
| 167 | return x; |
|---|
| 168 | } |
|---|
| 169 | |
|---|
| 170 | // ¥Ú¡¼¥¸¤Î²Ä»ëÎΰè¤ÎYºÂɸ¤ò¼èÆÀ¤¹¤ë |
|---|
| 171 | function getPageScrollY() |
|---|
| 172 | { |
|---|
| 173 | var y = 0; |
|---|
| 174 | |
|---|
| 175 | if (document.body && document.body.scrollTop != null) { |
|---|
| 176 | y = document.body.scrollTop; |
|---|
| 177 | } else if (document.documentElement && document.documentElement.scrollTop != null) { |
|---|
| 178 | y = document.documentElement.scrollTop; |
|---|
| 179 | } else if (window.scrollY != null) { |
|---|
| 180 | y = window.scrollY; |
|---|
| 181 | } else if (window.pageYOffset != null) { |
|---|
| 182 | y = window.pageYOffset; |
|---|
| 183 | } |
|---|
| 184 | |
|---|
| 185 | return y; |
|---|
| 186 | } |
|---|
| 187 | |
|---|
| 188 | |
|---|
| 189 | // ¥ª¥Ö¥¸¥§¥¯¥È¤ÎºÂɸ¤ò¥»¥Ã¥È |
|---|
| 190 | function moveElm ( elm, x, y ) { |
|---|
| 191 | elm.style.left = x + 'px'; |
|---|
| 192 | elm.style.top = y + 'px'; |
|---|
| 193 | } |
|---|
| 194 | |
|---|
| 195 | // ¥Þ¥¦¥¹¥À¥¦¥ó¥¤¥Ù¥ó¥È |
|---|
| 196 | function onMouseDown (evt) { |
|---|
| 197 | |
|---|
| 198 | var target = evt.target ? evt.target : evt.srcElement; |
|---|
| 199 | var x = getEventX ( evt ); |
|---|
| 200 | var y = getEventY ( evt ); |
|---|
| 201 | |
|---|
| 202 | // |
|---|
| 203 | // Save Information to Globals |
|---|
| 204 | // |
|---|
| 205 | if (mouseFlg == false) { |
|---|
| 206 | |
|---|
| 207 | gDragged = target; |
|---|
| 208 | |
|---|
| 209 | gDeltaX = x - getX(gDragged); |
|---|
| 210 | gDeltaY = y - getY(gDragged); |
|---|
| 211 | |
|---|
| 212 | gDraggedId = getAttrValue ( gDragged, 'did' ); |
|---|
| 213 | setCursor ( gDragged, 'move' ); |
|---|
| 214 | |
|---|
| 215 | gOrgX = getX ( gDragged ); |
|---|
| 216 | gOrgY = getY ( gDragged ); |
|---|
| 217 | gtarget_id = getAttrValue ( gDragged, 'target_id' ); |
|---|
| 218 | |
|---|
| 219 | // |
|---|
| 220 | // Set |
|---|
| 221 | // |
|---|
| 222 | |
|---|
| 223 | // ¥É¥é¥Ã¥°Ãæ¤ÏȾƩÌÀ |
|---|
| 224 | setOpacity ( gDragged, 0.6 ); |
|---|
| 225 | |
|---|
| 226 | // ¥É¥é¥Ã¥°Ãæ¤ÏºÇÁ°ÌÌɽ¼¨ |
|---|
| 227 | setZindex ( gDragged , 2); |
|---|
| 228 | |
|---|
| 229 | addEvent ( document, 'mousemove', onMouseMove, false ); |
|---|
| 230 | addEvent ( document, 'mouseup', onMouseUp, false ); |
|---|
| 231 | |
|---|
| 232 | // ¥É¥é¥Ã¥°¤ò³«»Ï¤·¤¿¤È¤¤Ï¹â¤µ¤ò°ìÅÙ½é´ü²½¤¹¤ë¡£ |
|---|
| 233 | NowMaxHeight = defNavi; |
|---|
| 234 | |
|---|
| 235 | mouseFlg = true; |
|---|
| 236 | } |
|---|
| 237 | } |
|---|
| 238 | |
|---|
| 239 | |
|---|
| 240 | // ¥Þ¥¦¥¹¥à¡¼¥Ö¥¤¥Ù¥ó¥È |
|---|
| 241 | function onMouseMove(evt) { |
|---|
| 242 | |
|---|
| 243 | // ¸½ºß¤ÎºÂɸ¤ò¼èÆÀ |
|---|
| 244 | var x = getEventX ( evt ) + document.body.scrollLeft; // ¥Þ¥¦¥¹ºÂɸ X |
|---|
| 245 | var y = getEventY ( evt ) + document.body.scrollTop; // ¥Þ¥¦¥¹ºÂɸ Y |
|---|
| 246 | var nowleft = getEventX ( evt ) - gDeltaX; // ¥ª¥Ö¥¸¥§¥¯¥ÈºÂɸ LEFT |
|---|
| 247 | var nowtop = getEventY ( evt ) - gDeltaY; // ¥ª¥Ö¥¸¥§¥¯¥ÈºÂɸ TOP |
|---|
| 248 | |
|---|
| 249 | // ¥ª¥Ö¥¸¥§¥¯¥È¤ò°Üư |
|---|
| 250 | moveElm ( gDragged, nowleft, nowtop ); |
|---|
| 251 | |
|---|
| 252 | for ( var i = 0; i < all_elms.length; i++ ) { |
|---|
| 253 | // drop_target¾å¤Ë¤¤¿¾ì¹ç¤Ë¤Î¤ß½èÍý¤ò¹Ô¤¦ |
|---|
| 254 | if ( isEventOnElm ( evt, all_elms[i].id ) ) { |
|---|
| 255 | if ( all_elms[i].attributes['tid'] ) { |
|---|
| 256 | var tid = getAttrValue ( all_elms[i], 'tid' ); |
|---|
| 257 | |
|---|
| 258 | // ÇØ·Ê¿§¤ÎÊѹ¹ ̤»ÈÍÑÎΰè¤ÏÊѹ¹¤·¤Ê¤¤ |
|---|
| 259 | all_elms[i].style.background="#ffffdd"; |
|---|
| 260 | |
|---|
| 261 | // target_id ¤Î½ñ¤´¹¤¨ |
|---|
| 262 | setAttrValue ( gDragged, 'target_id', tid ); |
|---|
| 263 | |
|---|
| 264 | //objCheckLine.style.top = parseInt(nowtop) + parseInt(gDragged.style.height) / 2 + 'px'; |
|---|
| 265 | //objCheckLine.style.top = y; |
|---|
| 266 | |
|---|
| 267 | // ÇÛÎó¤ÎºÆºîÀ® |
|---|
| 268 | fnCreateArr(1, y, x); |
|---|
| 269 | // ÇÛÎó¤ÎʤÓÂØ¤¨ |
|---|
| 270 | fnChangeObj(tid); |
|---|
| 271 | } |
|---|
| 272 | }else{ |
|---|
| 273 | if ( all_elms[i].attributes['tid'] && all_elms[i].style.background!="#ffffff") { |
|---|
| 274 | // ÇØ·Ê¿§¤ÎÊѹ¹ |
|---|
| 275 | all_elms[i].style.background="#ffffff"; |
|---|
| 276 | } |
|---|
| 277 | } |
|---|
| 278 | } |
|---|
| 279 | } |
|---|
| 280 | |
|---|
| 281 | // ¥Þ¥¦¥¹¥¢¥Ã¥×¥¤¥Ù¥ó¥È |
|---|
| 282 | function onMouseUp(evt) { |
|---|
| 283 | // ¥¤¥Ù¥ó¥È¤Î´ØÏ¢ÉÕ¤±²ò½ü |
|---|
| 284 | if (mouseFlg == true) { |
|---|
| 285 | removeEvent ( document, 'mousemove', onMouseMove, false ); |
|---|
| 286 | removeEvent ( document, 'mouseup', onMouseUp, false ); |
|---|
| 287 | mouseFlg = false; |
|---|
| 288 | } |
|---|
| 289 | |
|---|
| 290 | if ( !isOnDropTarget (evt) ) { |
|---|
| 291 | // ¸µ¤Î°ÌÃÖ¤ËÌ᤹ |
|---|
| 292 | moveElm ( gDragged, gOrgX, gOrgY ); |
|---|
| 293 | setAttrValue ( gDragged, 'target_id', gtarget_id ); |
|---|
| 294 | |
|---|
| 295 | // ÇÛÎó¤ÎºÆºîÀ® |
|---|
| 296 | fnCreateArr(1, gOrgY, gOrgX); |
|---|
| 297 | } |
|---|
| 298 | |
|---|
| 299 | // hiddenÍ×ÁǤνñ¤´¹¤¨ |
|---|
| 300 | var did = getAttrValue( gDragged, 'did' ); |
|---|
| 301 | var target_id = "target_id_"+did; |
|---|
| 302 | document.form1[target_id].value = getAttrValue( gDragged, 'target_id' ); |
|---|
| 303 | |
|---|
| 304 | // ȾƩÌÀ¡¢¥Þ¥¦¥¹¥Ý¥¤¥ó¥¿¡¢ºÇÁ°Ì̽èÍý¤òÌ᤹ |
|---|
| 305 | setOpacity( gDragged, 1); |
|---|
| 306 | setCursor ( gDragged, 'move' ); |
|---|
| 307 | setZindex ( gDragged , 1); |
|---|
| 308 | |
|---|
| 309 | // ʤÓÂØ¤¨ |
|---|
| 310 | fnSortObj(); |
|---|
| 311 | |
|---|
| 312 | // ÇØ·Ê¿§¤òÌ᤹ |
|---|
| 313 | for ( var i = 0; i < all_elms.length; i++ ) { |
|---|
| 314 | // drop_target¾å¤Ë¤¤¿¾ì¹ç¤Ë¤Î¤ß½èÍý¤ò¹Ô¤¦ |
|---|
| 315 | if ( isEventOnElm ( evt, all_elms[i].id ) && all_elms[i].attributes['tid']) { |
|---|
| 316 | // ÇØ·Ê¿§¤ÎÊѹ¹ |
|---|
| 317 | all_elms[i].style.background="#ffffff"; |
|---|
| 318 | } |
|---|
| 319 | } |
|---|
| 320 | } |
|---|
| 321 | |
|---|
| 322 | // DropTarget¾å¤Ë¥ª¥Ö¥¸¥§¥¯¥È¤¬Í褿¤«¤òȽÃǤ¹¤ë |
|---|
| 323 | function isOnDropTarget ( evt ) { |
|---|
| 324 | |
|---|
| 325 | for ( var i=0; i<all_elms.length; i++ ) { |
|---|
| 326 | if ( isEventOnElm ( evt, all_elms[i].id ) ) { |
|---|
| 327 | if ( all_elms[i].attributes['tid'] ) { |
|---|
| 328 | return true; |
|---|
| 329 | } |
|---|
| 330 | } |
|---|
| 331 | } |
|---|
| 332 | return false; |
|---|
| 333 | } |
|---|
| 334 | function isEventOnElm (evt, drop_target_id) { |
|---|
| 335 | |
|---|
| 336 | if (drop_target_id == '') { |
|---|
| 337 | return ''; |
|---|
| 338 | } |
|---|
| 339 | |
|---|
| 340 | var evtX = getEventX(evt) + getPageScrollX(); |
|---|
| 341 | var evtY = getEventY(evt) + getPageScrollY(); |
|---|
| 342 | |
|---|
| 343 | var drop_target = document.getElementById( drop_target_id ); |
|---|
| 344 | |
|---|
| 345 | drp_left = getX( drop_target ); |
|---|
| 346 | drp_top = getY( drop_target ); |
|---|
| 347 | |
|---|
| 348 | var x = drp_left; |
|---|
| 349 | var y = drp_top; |
|---|
| 350 | |
|---|
| 351 | var width = getWidth ( drop_target ); |
|---|
| 352 | var height = getHeight ( drop_target ); |
|---|
| 353 | |
|---|
| 354 | // alert(evtX +" / "+ x +" / "+ evtY +" / "+ y +" / "+ width +" / "+ height); |
|---|
| 355 | |
|---|
| 356 | return evtX > x && evtY > y && evtX < x + width && evtY < y + height; |
|---|
| 357 | } |
|---|
| 358 | |
|---|
| 359 | // ¥ª¥Ö¥¸¥§¥¯¥È¤ÎʤÓÂØ¤¨¤ò¹Ô¤¦ |
|---|
| 360 | function fnSortObj(){ |
|---|
| 361 | fnSetTargetHeight(); |
|---|
| 362 | for ( var cnt = 0; cnt < all_elms.length; cnt++ ) { |
|---|
| 363 | |
|---|
| 364 | // class¤¬ drop_target ¤Î¾ì¹ç¤Î¤ß½èÍý¤ò¹Ô¤¦ |
|---|
| 365 | if ( getAttrValue ( all_elms[cnt], 'class' ) == 'drop_target' ) { |
|---|
| 366 | var tid = getAttrValue ( all_elms[cnt], 'tid' ); |
|---|
| 367 | |
|---|
| 368 | // ÇÛÎó¤ÎʤÓÂØ¤¨ |
|---|
| 369 | fnChangeObj(tid); |
|---|
| 370 | |
|---|
| 371 | // ÇÛÃÖ |
|---|
| 372 | fnSetObj( tid, cnt ); |
|---|
| 373 | } |
|---|
| 374 | } |
|---|
| 375 | } |
|---|
| 376 | |
|---|
| 377 | function alerttest(msg, x, y){ |
|---|
| 378 | alert(msg); |
|---|
| 379 | } |
|---|
| 380 | |
|---|
| 381 | // ÇÛÎó¤ÎºîÀ® |
|---|
| 382 | function fnCreateArr( addEvt , top , left ){ |
|---|
| 383 | |
|---|
| 384 | var arrObjtmp = new Object(); |
|---|
| 385 | arrObjtmp['LeftNavi'] = Array(); |
|---|
| 386 | arrObjtmp['RightNavi'] = Array(); |
|---|
| 387 | arrObjtmp['MainHead'] = Array(); |
|---|
| 388 | arrObjtmp['MainFoot'] = Array(); |
|---|
| 389 | arrObjtmp['Unused'] = Array(); |
|---|
| 390 | |
|---|
| 391 | for ( var i = 0; i < all_elms.length; i++ ) { |
|---|
| 392 | |
|---|
| 393 | //test = all_elms[i].attributes.item('class'); |
|---|
| 394 | //test = all_elms[i].attributes.getNamedItem('class'); |
|---|
| 395 | //alert(test.nodeValue); |
|---|
| 396 | |
|---|
| 397 | //1 id̾¤¬'test0'¤Î¥¨¥ì¥á¥ó¥È¤òÊÑ¿ôt0¤ØÆþ¤ì¤ë |
|---|
| 398 | var t0 = all_elms[i] |
|---|
| 399 | |
|---|
| 400 | //2 win-e5¤òʬ´ô¤·¤Æt0¤Îid°À¤òÊÑ¿ôt0a¤ØÆþ¤ì¤ë |
|---|
| 401 | if((typeof ScriptEngineMajorVersion)=='function') |
|---|
| 402 | { |
|---|
| 403 | if( Math.floor(ScriptEngineMajorVersion()) == 5 && |
|---|
| 404 | navigator.userAgent.indexOf("Win")!=-1) //win-e5Âбþ |
|---|
| 405 | { |
|---|
| 406 | t0a = t0.attributes.item('id') |
|---|
| 407 | } |
|---|
| 408 | else |
|---|
| 409 | { |
|---|
| 410 | t0a = t0.attributes.getNamedItem('id') |
|---|
| 411 | } |
|---|
| 412 | } else { |
|---|
| 413 | t0a = t0.attributes.getNamedItem('id') |
|---|
| 414 | } |
|---|
| 415 | |
|---|
| 416 | //3 Safari¤ÈKonqueror¤Ïspecified¤òȿž |
|---|
| 417 | alert(123); |
|---|
| 418 | /* |
|---|
| 419 | syuuseiSpecified = t0a.specified |
|---|
| 420 | if(navigator.userAgent.indexOf('Safari')!=-1 || |
|---|
| 421 | navigator.userAgent.indexOf('Konqueror')!=-1 ) |
|---|
| 422 | syuuseiSpecified = !t0a.specified |
|---|
| 423 | */ |
|---|
| 424 | |
|---|
| 425 | alert(123); |
|---|
| 426 | |
|---|
| 427 | //4 t0a¤Î³Æ¥¢¥È¥ê¥Ó¥å¡¼¥È¤ò¥À¥¤¥¢¥í¥°É½¼¨¤¹¤ë |
|---|
| 428 | alert( t0a.value ) |
|---|
| 429 | alert(123); |
|---|
| 430 | |
|---|
| 431 | |
|---|
| 432 | |
|---|
| 433 | // class¤¬ dragged_elm ¤Î¾ì¹ç¤Î¤ß½èÍý¤ò¹Ô¤¦ |
|---|
| 434 | if ( getAttrValue ( all_elms[i], 'class' ) == 'dragged_elm' ) { |
|---|
| 435 | |
|---|
| 436 | // ¥Þ¥¦¥¹¥À¥¦¥ó¥¤¥Ù¥ó¥È¤È´ØÏ¢ÉÕ¤±¤ò¹Ô¤¦ |
|---|
| 437 | if (addEvt == 0) { |
|---|
| 438 | addEvent ( all_elms[i], 'mousedown', onMouseDown, false ); |
|---|
| 439 | } |
|---|
| 440 | |
|---|
| 441 | var target_id = getAttrValue ( all_elms[i], 'target_id' ); |
|---|
| 442 | var len = arrObjtmp[target_id].length; |
|---|
| 443 | var did = getAttrValue ( all_elms[i], 'did' ); |
|---|
| 444 | |
|---|
| 445 | arrObjtmp[target_id][len] = new SC_Size(); |
|---|
| 446 | arrObjtmp[target_id][len].id = did; |
|---|
| 447 | arrObjtmp[target_id][len].obj = all_elms[i]; |
|---|
| 448 | arrObjtmp[target_id][len].width = getWidth( all_elms[i] ); |
|---|
| 449 | arrObjtmp[target_id][len].height = getHeight( all_elms[i] ); |
|---|
| 450 | |
|---|
| 451 | // ¥É¥é¥Ã¥°Ãæ¤Î¥ª¥Ö¥¸¥§¥¯¥È¤¬Â¸ºß¤¹¤ì¤Ð¡¢¤½¤Î¥ª¥Ö¥¸¥§¥¯¥È¤À¤±¥Þ¥¦¥¹¥Ý¥¤¥ó¥¿¤ÎºÂɸ¤ò»ØÄꤹ¤ë¡£ |
|---|
| 452 | if (gDragged != "") { |
|---|
| 453 | if (did != getAttrValue ( gDragged, 'did' )) { |
|---|
| 454 | // top ¤Ï¾ï¤Ë¥ª¥Ö¥¸¥§¥¯¥È¤ÎÃæ¿´¤ò¼èÆÀ¤¹¤ë¤è¤¦¤Ë¤¹¤ë |
|---|
| 455 | arrObjtmp[target_id][len].top = (parseInt(getY( all_elms[i] )) + arrObjtmp[target_id][len].height / 2 ); |
|---|
| 456 | arrObjtmp[target_id][len].left = getX( all_elms[i] ); |
|---|
| 457 | }else { |
|---|
| 458 | arrObjtmp[target_id][len].top = top; |
|---|
| 459 | arrObjtmp[target_id][len].left = left; |
|---|
| 460 | } |
|---|
| 461 | } else { |
|---|
| 462 | // top ¤Ï¾ï¤Ë¥ª¥Ö¥¸¥§¥¯¥È¤ÎÃæ¿´¤ò¼èÆÀ¤¹¤ë¤è¤¦¤Ë¤¹¤ë |
|---|
| 463 | arrObjtmp[target_id][len].top = i; |
|---|
| 464 | arrObjtmp[target_id][len].left = getX( all_elms[i] ); |
|---|
| 465 | } |
|---|
| 466 | } |
|---|
| 467 | } |
|---|
| 468 | |
|---|
| 469 | arrObj = arrObjtmp; |
|---|
| 470 | } |
|---|
| 471 | |
|---|
| 472 | // ÇÛÎó¤ÎʤÓÂØ¤¨ (¥Ð¥Ö¥ë¥½¡¼¥È¤ÇʤÓÂØ¤¨¤ò¹Ô¤¦) |
|---|
| 473 | function fnChangeObj( tid ){ |
|---|
| 474 | for ( var i = 0; i < arrObj[tid].length-1; i++ ) { |
|---|
| 475 | for ( var j = arrObj[tid].length-1; j > i; j-- ) { |
|---|
| 476 | if ( arrObj[tid][j].top < arrObj[tid][i].top ) { |
|---|
| 477 | var arrTemp = new Array(); |
|---|
| 478 | arrTemp = arrObj[tid][j]; |
|---|
| 479 | arrObj[tid][j] = arrObj[tid][i]; |
|---|
| 480 | arrObj[tid][i] = arrTemp; |
|---|
| 481 | } |
|---|
| 482 | } |
|---|
| 483 | } |
|---|
| 484 | } |
|---|
| 485 | |
|---|
| 486 | // ÇÛÃÖ |
|---|
| 487 | function fnSetObj( tid, cnt ){ |
|---|
| 488 | var target_height = 0; |
|---|
| 489 | |
|---|
| 490 | drp_left = getX(all_elms[cnt]); //all_elms[cnt].offsetLeft; |
|---|
| 491 | drp_top = getY(all_elms[cnt]); //all_elms[cnt].offsetTop; |
|---|
| 492 | |
|---|
| 493 | for ( var j = 0; j < arrObj[tid].length; j++ ) { |
|---|
| 494 | // ÇÛÃÖ¤¹¤ëºÂɸ¤Î¼èÆÀ |
|---|
| 495 | var left = parseInt(drp_left) + parseInt(all_elms[cnt].style.width) / 2 - parseInt(arrObj[tid][j].width) / 2; |
|---|
| 496 | if (j == 0){ |
|---|
| 497 | var top = drp_top + arrObj[tid][j].margin; |
|---|
| 498 | }else{ |
|---|
| 499 | var top = arrObj[tid][j-1].top + arrObj[tid][j].margin + arrObj[tid][j-1].height |
|---|
| 500 | } |
|---|
| 501 | |
|---|
| 502 | // ºÂɸ¤òÊÝ»ý |
|---|
| 503 | arrObj[tid][j].top = top; |
|---|
| 504 | arrObj[tid][j].left = left; |
|---|
| 505 | |
|---|
| 506 | // ÇÛÃÖ¤ò¹Ô¤¦ |
|---|
| 507 | moveElm ( arrObj[tid][j].obj, left ,top); |
|---|
| 508 | |
|---|
| 509 | // ¹â¤µ·×»» |
|---|
| 510 | target_height = target_height + arrObj[tid][j].margin + arrObj[tid][j].height; |
|---|
| 511 | |
|---|
| 512 | // hidden¤ÎÃͤò½ñ¤´¹¤¨ |
|---|
| 513 | var top_id = "top_" + arrObj[tid][j].id; |
|---|
| 514 | document.form1[top_id].value = top; |
|---|
| 515 | |
|---|
| 516 | } |
|---|
| 517 | } |
|---|
| 518 | |
|---|
| 519 | // ¥É¥í¥Ã¥×¥¿¡¼¥²¥Ã¥È¤Î¹â¤µÄ´À° |
|---|
| 520 | function fnSetTargetHeight(){ |
|---|
| 521 | |
|---|
| 522 | var NaviHeight = defNavi; |
|---|
| 523 | var MainHeadHeight = defMainNavi; |
|---|
| 524 | var MainFootHeight = defMainNavi; |
|---|
| 525 | var UnusedHeight = defUnused; |
|---|
| 526 | |
|---|
| 527 | // ¹â¤µ·×»» |
|---|
| 528 | for ( var cnt = 0; cnt < all_elms.length; cnt++ ) { |
|---|
| 529 | var target_height = 0; |
|---|
| 530 | |
|---|
| 531 | // class¤¬ drop_target ¤Î¾ì¹ç¤Î¤ß½èÍý¤ò¹Ô¤¦ |
|---|
| 532 | if ( getAttrValue ( all_elms[cnt], 'class' ) == 'drop_target' ) { |
|---|
| 533 | var tid = getAttrValue ( all_elms[cnt], 'tid' ); |
|---|
| 534 | |
|---|
| 535 | for ( var j = 0; j < arrObj[tid].length; j++ ) { |
|---|
| 536 | target_height = target_height + arrObj[tid][j].margin + arrObj[tid][j].height; |
|---|
| 537 | } |
|---|
| 538 | |
|---|
| 539 | // ²¼¤ÎÉý |
|---|
| 540 | target_height = target_height + 20; |
|---|
| 541 | |
|---|
| 542 | // º¸±¦¥Ê¥Ó¡¢Ì¤»ÈÍÑÎΰè¤Î¹â¤µ¤òÊÝ»ý |
|---|
| 543 | if (tid == 'LeftNavi' || tid == 'RightNavi' || tid == 'Unused') { |
|---|
| 544 | if (NaviHeight < target_height) { |
|---|
| 545 | NaviHeight = target_height; |
|---|
| 546 | } |
|---|
| 547 | } |
|---|
| 548 | |
|---|
| 549 | // ¥á¥¤¥ó¾åÉôÎΰè¤Î¹â¤µ¤òÊÝ»ý |
|---|
| 550 | if (tid == 'MainHead') { |
|---|
| 551 | if (target_height > defMainNavi) { |
|---|
| 552 | MainHeadHeight = target_height; |
|---|
| 553 | } |
|---|
| 554 | } |
|---|
| 555 | |
|---|
| 556 | // ¥á¥¤¥ó²¼ÉôÎΰè¤Î¹â¤µ¤òÊÝ»ý |
|---|
| 557 | if (tid == 'MainFoot') { |
|---|
| 558 | if (target_height > defMainNavi) { |
|---|
| 559 | MainFootHeight = target_height; |
|---|
| 560 | } |
|---|
| 561 | } |
|---|
| 562 | } |
|---|
| 563 | } |
|---|
| 564 | |
|---|
| 565 | // ¥á¥¤¥óÎΰè¤Î¹â¤µ¤òÊÝ»ý |
|---|
| 566 | // alert(NaviHeight+"/"+MainHeadHeight+"/"+MainFootHeight); |
|---|
| 567 | MainHeight = NaviHeight - ( MainHeadHeight + MainFootHeight ); |
|---|
| 568 | if (MainHeight < defMain) { |
|---|
| 569 | MainHeight = defMain; |
|---|
| 570 | } |
|---|
| 571 | |
|---|
| 572 | // ¥á¥¤¥óÉôʬ¤Î¤Û¤¦¤¬Â礤¤¾ì¹ç¤Ë¤Ïº¸±¦¥Ê¥Ó¤âÂ礤¯¤¹¤ë |
|---|
| 573 | if (NaviHeight < MainHeadHeight + MainFootHeight + MainHeight) { |
|---|
| 574 | NaviHeight = MainHeadHeight + MainFootHeight + MainHeight; |
|---|
| 575 | } |
|---|
| 576 | // Êѹ¹ |
|---|
| 577 | for ( var cnt = 0; cnt < all_elms.length; cnt++ ) { |
|---|
| 578 | var target_height = 0; |
|---|
| 579 | |
|---|
| 580 | // class¤¬ drop_target ¤Î¾ì¹ç¤Î¤ß½èÍý¤ò¹Ô¤¦ |
|---|
| 581 | if ( getAttrValue ( all_elms[cnt], 'class' ) == 'drop_target' ) { |
|---|
| 582 | var tid = getAttrValue ( all_elms[cnt], 'tid' ); |
|---|
| 583 | |
|---|
| 584 | // tid¤Ë¤è¤Ã¤Æ½èÍý¤òʬ¤±¤ë |
|---|
| 585 | if (tid == 'LeftNavi' || tid == 'RightNavi') { |
|---|
| 586 | target_height = NaviHeight; |
|---|
| 587 | }else if (tid == 'MainHead' ) { |
|---|
| 588 | target_height = MainHeadHeight; |
|---|
| 589 | }else if (tid == 'MainFoot') { |
|---|
| 590 | target_height = MainFootHeight; |
|---|
| 591 | }else if (tid == 'Unused'){ |
|---|
| 592 | target_height = NaviHeight+100; |
|---|
| 593 | } |
|---|
| 594 | |
|---|
| 595 | all_elms[cnt].style.height = target_height; |
|---|
| 596 | } |
|---|
| 597 | } |
|---|
| 598 | |
|---|
| 599 | // ¥á¥¤¥ó¥Æ¡¼¥Ö¥ë¤Î¹â¤µ¤âÊѹ¹ |
|---|
| 600 | for (var i = 0; i < all_td.length; i++) { |
|---|
| 601 | name = getAttrValue ( all_td[i], 'name' ); |
|---|
| 602 | if (name == 'Main') { |
|---|
| 603 | all_td[i].height = MainHeight-2; |
|---|
| 604 | } |
|---|
| 605 | } |
|---|
| 606 | } |
|---|
| 607 | |
|---|
| 608 | //¥¦¥¤¥ó¥É¥¦¥µ¥¤¥º¼èÆÀ |
|---|
| 609 | function GetWindowSize(type){ |
|---|
| 610 | var ua = navigator.userAgent; // ¥æ¡¼¥¶¡¼¥¨¡¼¥¸¥§¥ó¥È |
|---|
| 611 | var nWidth, nHeight; // ¥µ¥¤¥º |
|---|
| 612 | var nHit = ua.indexOf("MSIE"); // ¹çÃפ·¤¿Éôʬ¤ÎÀèÆ¬Ê¸»ú¤Îꤍ»ú |
|---|
| 613 | var bIE = (nHit >= 0); // IE ¤«¤É¤¦¤« |
|---|
| 614 | var bVer6 = (bIE && ua.substr(nHit+5, 1) == "6"); // ¥Ð¡¼¥¸¥ç¥ó¤¬ 6 ¤«¤É¤¦¤« |
|---|
| 615 | var bStd = (document.compatMode && document.compatMode=="CSS1Compat"); // ɸ½à¥â¡¼¥É¤«¤É¤¦¤« |
|---|
| 616 | |
|---|
| 617 | switch(type){ |
|---|
| 618 | case "width": |
|---|
| 619 | if(bIE){ |
|---|
| 620 | if (bVer6 && bStd) { |
|---|
| 621 | return document.documentElement.clientWidth; |
|---|
| 622 | } else { |
|---|
| 623 | return document.body.clientWidth; |
|---|
| 624 | } |
|---|
| 625 | }else if(document.layers){ |
|---|
| 626 | return(innerWidth); |
|---|
| 627 | }else{ |
|---|
| 628 | return(-1); |
|---|
| 629 | } |
|---|
| 630 | break; |
|---|
| 631 | case "height": |
|---|
| 632 | if(bIE){ |
|---|
| 633 | if (bVer6 && bStd) { |
|---|
| 634 | return document.documentElement.clientHeight; |
|---|
| 635 | } else { |
|---|
| 636 | return document.body.clientHeight; |
|---|
| 637 | } |
|---|
| 638 | return(document.body.clientHeight); |
|---|
| 639 | }else if(document.layers){ |
|---|
| 640 | return(innerHeight); |
|---|
| 641 | }else{ |
|---|
| 642 | return(-1); |
|---|
| 643 | } |
|---|
| 644 | break; |
|---|
| 645 | default: |
|---|
| 646 | return(-1); |
|---|
| 647 | break; |
|---|
| 648 | } |
|---|
| 649 | } |
|---|
| 650 | |
|---|
| 651 | // ¥¦¥£¥ó¥É¥¦¥µ¥¤¥º¤¬Êѹ¹¤Ë¤Ê¤Ã¤¿¤È¤¤ÏÁ´¤Æ¤Î¥ª¥Ö¥¸¥§¥¯¥È¤â°Üư¤¹¤ë |
|---|
| 652 | function fnMoveObject() { |
|---|
| 653 | |
|---|
| 654 | // ¥¦¥£¥ó¥É¥¦¤ÎÉýÊѹ¹ÈæÎ¨¤ò¼èÆÀ |
|---|
| 655 | var moveX = GetWindowSize("width") - scrX; |
|---|
| 656 | var BlankX = ( GetWindowSize("width") - 878 ) / 2 |
|---|
| 657 | |
|---|
| 658 | for ( var i = 0; i < all_elms.length; i++) { |
|---|
| 659 | if (all_elms[i].style.left != "" ) { |
|---|
| 660 | |
|---|
| 661 | var elm_class = getAttrValue ( all_elms[i], 'class' ); |
|---|
| 662 | |
|---|
| 663 | if (elm_class == 'drop_target') { |
|---|
| 664 | var tid = getAttrValue ( all_elms[i], 'tid' ); |
|---|
| 665 | |
|---|
| 666 | if (tid == 'LeftNavi') { |
|---|
| 667 | LeftMargin = marginLeftNavi; |
|---|
| 668 | }else if (tid == 'RightNavi') { |
|---|
| 669 | LeftMargin = marginRightNavi; |
|---|
| 670 | }else if (tid == 'MainHead' || tid == 'MainFoot') { |
|---|
| 671 | LeftMargin = marginMain; |
|---|
| 672 | }else{ |
|---|
| 673 | LeftMargin = marginUnused; |
|---|
| 674 | } |
|---|
| 675 | |
|---|
| 676 | if (BlankX > 0) { |
|---|
| 677 | all_elms[i].style.left = BlankX + LeftMargin + 'px'; |
|---|
| 678 | }else{ |
|---|
| 679 | all_elms[i].style.left = LeftMargin + 'px'; |
|---|
| 680 | } |
|---|
| 681 | } |
|---|
| 682 | } |
|---|
| 683 | } |
|---|
| 684 | |
|---|
| 685 | scrX = GetWindowSize("width"); |
|---|
| 686 | scrY = GetWindowSize("height"); |
|---|
| 687 | |
|---|
| 688 | fnSortObj(); |
|---|
| 689 | } |
|---|
| 690 | // ²èÌÌ¤Î¥í¡¼¥É¥¤¥Ù¥ó¥È¤Ë´ØÏ¢ÉÕ¤± |
|---|
| 691 | addEvent ( window, 'load', init, false ); |
|---|