치

메뉴 생성 클래스

· 2006-01-15 (일) 02:03:29 · 3662 · 1
<!--클래스-->
<script>
Layer = function() {
this.Elem = document.createElement('div');
this.Elem.id = 'Layer' + Layer.Count++;
this.Elem.appendChild(document.createElement('div'));
this.Elem.appendChild(document.createElement('div'));

// Properties
this.Id = this.Elem.id;
this.Drag = true;
this.Subject = 'Layer';
this.Content = 'Content';
this.Style = this.Elem.style;
this.SubjectStyle = this.Elem.children[0].style;
this.ContentStyle = this.Elem.children[1].style;
//

// Init
with(this.Style) {
position = 'absolute';
border = '1px solid slategray';
zIndex = Layer.ZIndex++;
}
with(this.SubjectStyle) {
font = 'bold 9pt tahoma';
backgroundColor = 'slategray';
color = 'lightgrey';
padding = '3px';
cursor = 'default';
}
with(this.ContentStyle) {
font = 'normal 9pt tahoma';
backgroundColor = 'whitesmoke';
color = 'slategray';
padding = '3px';
}
//

// Show Method
this.Show = function() {
document.body.appendChild(this.Elem);
this.Refresh();
}//

// Refresh Method
this.Refresh = function() {
this.Elem.children[1].innerHTML = this.Content;
with(this.Elem.children[0]) {
innerHTML = this.Subject;
onselectstart = function() { return false; }
style.width = Math.max(this.Elem.children[1].offsetWidth, offsetWidth);
ondblclick = function() {
with(this.parentElement.children[1].style) {
display = display ? '' : 'none';
}
}

// Drag Event
if(this.Drag) {
IsDrag = false;
var PadLeft = parseInt(style.paddingLeft);
var PadTop = parseInt(style.paddingTop);
onmousedown = function() {
IsDrag = true;
DragX = event.offsetX + PadLeft;
DragY = event.offsetY + PadTop;
}
onmouseup = function() { IsDrag = false; }
onmouseout = function() { IsDrag = false; }
onmousemove = function() {
if(IsDrag) {
with(this.parentElement.style) {
left = event.clientX - DragX;
top = event.clientY - DragY;
}
}
}
}
else {
IsDrag = DragX = DragY = null;
onmousedown = onmouseup = onmouseout = onmousemove = null;
}// End Drag Event
}

}// End Refresh()

// Event z-index
this.Elem.children[0].onclick = function() { this.parentElement.style.zIndex = Layer.ZIndex++; }
this.Elem.children[1].onclick = function() { this.parentElement.style.zIndex = Layer.ZIndex++; }
}
Layer.Count = 0;
Layer.ZIndex = 100;
</script>
<!---->

<!--사용-->
<script>
window.onload = function() {
with(document) {
with(body) {
Layer1 = new Layer();
Layer1.Subject = '드래그 ON 레이어';
Layer1.Content = '나 보기가 역겨워 가실때에는<br>' +
'말 없이 고이 보내 드리오리다.<br>' +
'<img src=http://mypds.mireene.com/g4/_v1/img/mybanner05.jpg>';
Layer1.Show();

Layer2 = new Layer();
Layer2.Style.left = '200px';
Layer2.SubjectStyle.color = 'red';
Layer2.Drag = false;
Layer2.Subject = '드래그 OFF 레이어';
Layer2.Content = '드래그 되지 않는 레이어<br>타이틀을 더블클릭하면 창이 축소됩니다.';
Layer2.Show();
Layer2.ContentStyle.backgroundColor = 'ivory';
Layer2.Refresh(); // Show() 호출 후 속성이 변경되면 Refresh() 호출
};
}
}
</script>
<!----><div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 16:57:14 JavaScript에서 이동 됨]</div>
|

댓글 1개

좋은팁 감사합니다.
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
06-02-19 조회 3,127
06-02-02 조회 5,470
06-01-27 조회 3,718
06-01-27 조회 3,476
06-01-26 조회 3,949
06-01-20 조회 4,077
06-01-19 조회 4,128
06-01-15 조회 3,663
06-01-13 조회 4,025
06-01-10 조회 3,623
06-01-10 조회 3,202
06-01-09 조회 3,812
06-01-05 조회 3,475
06-01-05 조회 3,546
06-01-05 조회 4,825
06-01-04 조회 4,286
06-01-04 조회 6,026
05-12-30 조회 3,398
05-12-30 조회 5,546
05-12-30 조회 4,161
05-12-29 조회 3,893
05-12-27 조회 4,757
05-12-23 조회 3,672
05-12-21 조회 4,840
05-12-21 조회 5,090
05-12-16 조회 4,522
05-12-09 조회 4,550
05-12-05 조회 5,171
05-12-01 조회 3,396
05-11-30 조회 6,155
05-11-30 조회 4,711
05-11-29 조회 3,628
05-11-26 조회 3,292
05-11-10 조회 3,732
05-11-09 조회 4,046
05-11-09 조회 3,817
bbbking
05-11-05 조회 6,796
05-10-23 조회 3,700
bbbking
05-10-22 조회 5,339
05-10-20 조회 3,171
05-10-13 조회 8,371
05-10-09 조회 3,466
05-09-29 조회 4,510
05-09-28 조회 5,339
05-09-27 조회 3,608
05-09-27 조회 4,889
05-09-24 조회 4,099
05-09-23 조회 5,121
05-09-22 조회 6,126
05-09-22 조회 5,197
05-09-21 조회 6,860
05-09-15 조회 3,044
05-09-11 조회 4,271
05-09-08 조회 4,524
05-09-08 조회 3,930
05-09-08 조회 3,424
05-09-05 조회 5,643
05-09-04 조회 3,238
05-09-02 조회 3,204
05-09-02 조회 2,855
05-09-02 조회 2,640
05-09-01 조회 4,716
05-09-01 조회 5,845
05-08-31 조회 3,454
05-08-31 조회 4,133
05-08-25 조회 6,824
05-08-25 조회 3,843
05-08-21 조회 3,283
05-08-19 조회 5,544
05-08-18 조회 3,630
05-08-18 조회 3,226
05-08-17 조회 3,747
05-08-16 조회 3,580
05-08-14 조회 3,864
05-08-14 조회 4,344
05-08-08 조회 3,645
05-08-07 조회 5,729
05-08-05 조회 4,204
05-08-04 조회 5,526
05-08-01 조회 3,975
05-07-29 조회 5,091
05-07-29 조회 5,339
05-07-28 조회 8,024
05-07-27 조회 4,811
05-07-25 조회 3,731
05-07-24 조회 5,372
05-07-24 조회 3,202
05-07-22 조회 5,259
05-07-21 조회 4,728
05-07-21 조회 3,551
05-07-19 조회 5,821
bbbking
05-07-19 조회 3,466
05-07-16 조회 5,468
05-07-15 조회 4,559
05-07-14 조회 4,586
05-07-13 조회 4,772
05-07-12 조회 4,165
05-07-12 조회 6,901
05-07-11 조회 3,910
05-07-08 조회 6,786