source: temp/trunk/html/js/layout_design.js @ 4573

Revision 4573, 16.8 KB checked in by kakinaka, 20 years ago (diff)

blank

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