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

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