자바메뉴 에러 도와주세요 정보
그누보드 자바메뉴 에러 도와주세요본문
안녕하세요. 저는 아마추어로서 비영리싸이트인 korearth.net을 운영하고 있습니다. 처음에는 적수게시판을 썼었는데, 그누보드로 교체한지는 꽤 됬습니다.
싸이트를 운영하다 보니 새소식 메일링 서비스에 몇가지 문제점이 있어, 그누보드에 포함된 회원제를 새로 적용하려 합니다. 그래서 홈페이지를 전체적으로 개편하는데, 처음부터 막히네요. 문제는 다름이 아니라, 자바메뉴(서브메뉴를 보여주는 메뉴)를 삽입하였는데, 다 잘 되다가 게시판 글 읽기를 하면 메뉴가 더 이상 작동이 되질 않는다는 것입니다 (서브메뉴가 나타나질 않습니다). 벌써 한 달째 이렇게도 저렇게도 해보고 소스도 살펴보고 있지만 해결될 기미가 보이지 않습니다. 아마추어인 저에게는 무리인가 봅니다.
그누회원님들께서 살펴보시고 무엇이 문제인지 어떻게 해결해야 하는지 도움주시면 대단히 감사하겠습니다.
지금 작업중인 곳의 URL은
http://beta.korearth.net 이고,
메뉴 작업 내용은 아래와 같습니다.
1) 'javascript.js' 맨 끝에 아래 내용을 추가하였습니다
//-----------------------------------------------------------------------
// 2005년 2월 3일 더한 메뉴관련 함수들 (CascadeMenu)
//-----------------------------------------------------------------------
function InitMenu()
{
var bar = menuBar.children
for(var i=0;i < bar.length;i++)
{
var menu=eval(bar[i].menu)
menu.style.visibility = "hidden"
bar[i].onmouseover = new Function("ShowMenu("+bar[i].id+")")
var Items = menu.children
for(var j=0; j<Items.length; j++)
{
var menuItem = eval(Items[j].id)
if(menuItem.menu != null)
{
menuItem.innerHTML += "<Span Id="+menuItem.id+"_Arrow class='Arrow'>4</Span>"
//var tmp = eval(menuItem.id+"_Arrow")
// tmp.style.pixelLeft = menu.getBoundingClientRect().Right //- tmp.offsetWidth - 15
FindSubMenu(menuItem.menu)}
if(menuItem.cmd != null)
{
menuItem.onclick = new Function("Do("+menuItem.id+")") }
menuItem.onmouseover = new Function("highlight("+Items[j].id+")")
}
}
}
function FindSubMenu(subMenu)
{
var menu=eval(subMenu)
var Items = menu.children
for(var j=0; j<Items.length; j++)
{
menu.style.visibility = "hidden"
var menuItem = eval(Items[j].id)
if(menuItem.menu!= null)
{
menuItem.innerHTML += "<Span Id="+menuItem.id+"_Arrow class='Arrow'>4</Span>"
// var tmp = eval(menuItem.id+"_Arrow")
//tmp.style.pixelLeft = 35 //menuItem.getBoundingClientRect().right - tmp.offsetWidth - 15
FindSubMenu(menuItem.menu)
}
if(menuItem.cmd != null)
{
menuItem.onclick = new Function("Do("+menuItem.id+")") }
menuItem.onmouseover = new Function("highlight("+Items[j].id+")")
}
}
function ShowMenu(obj)
{
HideMenu(menuBar)
var menu = eval(obj.menu)
var bar = eval(obj.id)
bar.className="barOver"
menu.style.visibility = "visible"
menu.style.pixelTop = obj.getBoundingClientRect().top + obj.offsetHeight + Bdy.scrollTop
menu.style.pixelLeft = obj.getBoundingClientRect().left + Bdy.scrollLeft
}
function highlight(obj)
{
var PElement = eval(obj.parentElement.id)
if(PElement.hasChildNodes() == true)
{ var Elements = PElement.children
for(var i=0;i<Elements.length;i++)
{
TE = eval(Elements[i].id)
TE.className = "menuItem"
}
}
obj.className="ItemMouseOver"
window.defaultStatus = obj.title
ShowSubMenu(obj)
}
function Do(obj)
{
var cmd = eval(obj).cmd
window.navigate(cmd)
}
function HideMenu(obj)
{
if(obj.hasChildNodes()==true)
{
var child = obj.children
for(var j =0;j<child.length;j++)
{
if (child[j].className=="barOver")
{var bar = eval(child[j].id)
bar.className="Bar"}
if(child[j].menu != null)
{
var childMenu = eval(child[j].menu)
if(childMenu.hasChildNodes()==true)
HideMenu(childMenu)
childMenu.style.visibility = "hidden"
}
}
}
}
function ShowSubMenu(obj)
{
PMenu = eval(obj.parentElement.id)
HideMenu(PMenu)
if(obj.menu != null)
{
var menu = eval(obj.menu)
menu.style.visibility = "visible"
menu.style.pixelTop = obj.getBoundingClientRect().top + Bdy.scrollTop
menu.style.pixelLeft = obj.getBoundingClientRect().right + Bdy.scrollLeft
if(menu.getBoundingClientRect().right > window.screen.availWidth )
menu.style.pixelLeft = obj.getBoundingClientRect().left - menu.offsetWidth
}
}
//-----------------------------------------------------------------------------
//여기까지 메뉴 관련 함수
//-----------------------------------------------------------------------------
2) 'style.css' 끝에 아래 스타일을 추가했습니다
/* 2003년 2월 3일에 추가된 메뉴 관련 스타일 */
.menuBar
{
POSITION: relative;
BACKGROUND-COLOR: transparent;
TEXT-ALIGN: center
}
.Bar
{
BORDER-RIGHT: #91C4D7 1px outset;
BORDER-TOP: #91C4D7 1px outset;
FLOAT: left;
BORDER-LEFT: #91C4D7 1px outset;
WIDTH: 100px;
CURSOR: hand;
TEXT-INDENT: 5px;
BORDER-BOTTOM: #91C4D7 1px outset;
POSITION: relative;
BACKGROUND-COLOR: deepsky#91C4D7;
TEXT-ALIGN: center
}
.menu
{
BORDER-RIGHT: buttonhighlight thin outset;
BORDER-TOP: buttonhighlight thin outset;
VISIBILITY: hidden;
BORDER-LEFT: buttonhighlight thin outset;
WIDTH: 150px;
LINE-HEIGHT: 140%;
BORDER-BOTTOM: buttonhighlight thin outset;
POSITION: absolute;
BACKGROUND-COLOR: deepsky#91C4D7
}
.menuItem
{
PADDING-RIGHT: 15px;
PADDING-LEFT: 10px;
WIDTH: 100%;
CURSOR: hand;
LINE-HEIGHT: 20px;
BORDER-BOTTOM: white 1px solid
}
.ItemMouseOver
{
PADDING-RIGHT: 15px;
PADDING-LEFT: 10px;
WIDTH: 100%;
CURSOR: hand;
COLOR: highlighttext;
LINE-HEIGHT: 20px;
BORDER-BOTTOM: white 1px solid;
BACKGROUND-COLOR: highlight
}
.ItemMouseOut
{
WIDTH: 100%
}
.Arrow
{
FLOAT: right;
FONT-FAMILY: Webdings;
POSITION: absolute;
TEXT-ALIGN: left
}
.barOver
{
BORDER-RIGHT: #91C4D7 1px ridge;
BORDER-TOP: #91C4D7 1px ridge;
FLOAT: left;
BORDER-LEFT: #91C4D7 1px ridge;
WIDTH: 100px;
CURSOR: hand;
TEXT-INDENT: 5px;
BORDER-BOTTOM: #91C4D7 1px ridge;
POSITION: relative;
BACKGROUND-COLOR: deepsky#91C4D7;
TEXT-ALIGN: center
}
/* 여기까지 메뉴 관련 스타일 */
3) 'head.sub.php' 의 36번째 줄의 body tag 내의 내용을 다음과 같이 바꾸었습니다
<body leftmargin='<?=$cfg[leftmargin]?>' topmargin='<?=$cfg[topmargin]?>' <?=$script?> OnLoad="InitMenu()" Onclick="HideMenu(menuBar)" ID="Bdy">
4) head.phpd의 원래 메뉴 부분을 아래와 같이 대체하였습니다 (원래 파일의 45째 줄부터)
<!-- CasecadeMenu 시작 -->
<DIV Id="menuBar" class="menuBar" >
<DIV Id="Bar1" class="Bar" menu="menu1">Menu #1</DIV>
<DIV Id="Bar2" class="Bar" menu="menu2">Menu #2</DIV>
<DIV Id="Bar3" class="Bar" menu="menu3">Menu #3</DIV>
<DIV Id="Bar4" class="Bar" menu="menu4">Menu #4</DIV>
</DIV>
<!--MenuItem Definition -->
<div Id="menu1" class="menu" >
<div Id="menuItem1_1" class="menuItem" menu="menu6">SubMenu #1</div>
<div Id="menuItem1_2" class="menuItem" title="JavaScripts" cmd="http://javascript.internet.com/">JavaScript Source</div>
<div Id="menuItem1_3" class="menuItem" title="WDVL" cmd="http://www.wdvl.com">WDVL</div>
</div>
<div Id="menu2" class="menu">
<div Id="menuItem2_1" class="menuItem">Page #1</div>
<div Id="menuItem2_2" class="menuItem">Page #2</div>
<div Id="menuItem2_3" class="menuItem">Page #3</div>
</div>
<div Id="menu3" class="menu">
<div Id="menuItem3_1" class="menuItem">Page #1</div>
<div Id="menuItem3_2" class="menuItem">Page #2</div>
<div Id="menuItem3_3" class="menuItem">Page #3</div>
<div Id="menuItem3_4" class="menuItem" menu="menu5">SubMenu #4</div>
</div>
<div Id="menu4" class="menu">
<div Id="menuItem4_1" class="menuItem">Page #1</div>
<div Id="menuItem4_2" class="menuItem">Page #2</div>
<div Id="menuItem4_3" class="menuItem">Page #3</div>
<div Id="menuItem4_4" class="menuItem">Page #4</div>
</div>
<div id="menu5" class="menu">
<div Id="menuItem5_1" class="menuItem">Page #4-1</div>
<div Id="menuItem5_2" class="menuItem">Page #4-2</div>
<div Id="menuItem5_3" class="menuItem">Page #4-3</div>
</div>
<div id="menu6" class="menu">
<div Id="menuItem6_1" class="menuItem">Page #1-1</div>
<div Id="menuItem6_2" class="menuItem">Page #1-2</div>
<div Id="menuItem6_3" class="menuItem" menu="menu7">SubMenu #1-1</div>
</div>
<div id="menu7" class="menu">
<div Id="menuItem7_1" class="menuItem">Page #1-1-1</div>
<div Id="menuItem7_2" class="menuItem">Page #1-1-2</div>
<div Id="menuItem7_3" class="menuItem">Page #1-1-3</div>
</div>
<!-- CasecadeMenu 끝 -->
너무 긴 글 끝까지 읽어주셔서 감사합니다. 님들의 도움을 간절히 바라며 이만 줄입니다.
아 그리고 혹시 지질학에 관심 있으신 분은
http://www.kroearth.net 도 둘러보시고,
모두 행복한 설 쇠세요.
싸이트를 운영하다 보니 새소식 메일링 서비스에 몇가지 문제점이 있어, 그누보드에 포함된 회원제를 새로 적용하려 합니다. 그래서 홈페이지를 전체적으로 개편하는데, 처음부터 막히네요. 문제는 다름이 아니라, 자바메뉴(서브메뉴를 보여주는 메뉴)를 삽입하였는데, 다 잘 되다가 게시판 글 읽기를 하면 메뉴가 더 이상 작동이 되질 않는다는 것입니다 (서브메뉴가 나타나질 않습니다). 벌써 한 달째 이렇게도 저렇게도 해보고 소스도 살펴보고 있지만 해결될 기미가 보이지 않습니다. 아마추어인 저에게는 무리인가 봅니다.
그누회원님들께서 살펴보시고 무엇이 문제인지 어떻게 해결해야 하는지 도움주시면 대단히 감사하겠습니다.
지금 작업중인 곳의 URL은
http://beta.korearth.net 이고,
메뉴 작업 내용은 아래와 같습니다.
1) 'javascript.js' 맨 끝에 아래 내용을 추가하였습니다
//-----------------------------------------------------------------------
// 2005년 2월 3일 더한 메뉴관련 함수들 (CascadeMenu)
//-----------------------------------------------------------------------
function InitMenu()
{
var bar = menuBar.children
for(var i=0;i < bar.length;i++)
{
var menu=eval(bar[i].menu)
menu.style.visibility = "hidden"
bar[i].onmouseover = new Function("ShowMenu("+bar[i].id+")")
var Items = menu.children
for(var j=0; j<Items.length; j++)
{
var menuItem = eval(Items[j].id)
if(menuItem.menu != null)
{
menuItem.innerHTML += "<Span Id="+menuItem.id+"_Arrow class='Arrow'>4</Span>"
//var tmp = eval(menuItem.id+"_Arrow")
// tmp.style.pixelLeft = menu.getBoundingClientRect().Right //- tmp.offsetWidth - 15
FindSubMenu(menuItem.menu)}
if(menuItem.cmd != null)
{
menuItem.onclick = new Function("Do("+menuItem.id+")") }
menuItem.onmouseover = new Function("highlight("+Items[j].id+")")
}
}
}
function FindSubMenu(subMenu)
{
var menu=eval(subMenu)
var Items = menu.children
for(var j=0; j<Items.length; j++)
{
menu.style.visibility = "hidden"
var menuItem = eval(Items[j].id)
if(menuItem.menu!= null)
{
menuItem.innerHTML += "<Span Id="+menuItem.id+"_Arrow class='Arrow'>4</Span>"
// var tmp = eval(menuItem.id+"_Arrow")
//tmp.style.pixelLeft = 35 //menuItem.getBoundingClientRect().right - tmp.offsetWidth - 15
FindSubMenu(menuItem.menu)
}
if(menuItem.cmd != null)
{
menuItem.onclick = new Function("Do("+menuItem.id+")") }
menuItem.onmouseover = new Function("highlight("+Items[j].id+")")
}
}
function ShowMenu(obj)
{
HideMenu(menuBar)
var menu = eval(obj.menu)
var bar = eval(obj.id)
bar.className="barOver"
menu.style.visibility = "visible"
menu.style.pixelTop = obj.getBoundingClientRect().top + obj.offsetHeight + Bdy.scrollTop
menu.style.pixelLeft = obj.getBoundingClientRect().left + Bdy.scrollLeft
}
function highlight(obj)
{
var PElement = eval(obj.parentElement.id)
if(PElement.hasChildNodes() == true)
{ var Elements = PElement.children
for(var i=0;i<Elements.length;i++)
{
TE = eval(Elements[i].id)
TE.className = "menuItem"
}
}
obj.className="ItemMouseOver"
window.defaultStatus = obj.title
ShowSubMenu(obj)
}
function Do(obj)
{
var cmd = eval(obj).cmd
window.navigate(cmd)
}
function HideMenu(obj)
{
if(obj.hasChildNodes()==true)
{
var child = obj.children
for(var j =0;j<child.length;j++)
{
if (child[j].className=="barOver")
{var bar = eval(child[j].id)
bar.className="Bar"}
if(child[j].menu != null)
{
var childMenu = eval(child[j].menu)
if(childMenu.hasChildNodes()==true)
HideMenu(childMenu)
childMenu.style.visibility = "hidden"
}
}
}
}
function ShowSubMenu(obj)
{
PMenu = eval(obj.parentElement.id)
HideMenu(PMenu)
if(obj.menu != null)
{
var menu = eval(obj.menu)
menu.style.visibility = "visible"
menu.style.pixelTop = obj.getBoundingClientRect().top + Bdy.scrollTop
menu.style.pixelLeft = obj.getBoundingClientRect().right + Bdy.scrollLeft
if(menu.getBoundingClientRect().right > window.screen.availWidth )
menu.style.pixelLeft = obj.getBoundingClientRect().left - menu.offsetWidth
}
}
//-----------------------------------------------------------------------------
//여기까지 메뉴 관련 함수
//-----------------------------------------------------------------------------
2) 'style.css' 끝에 아래 스타일을 추가했습니다
/* 2003년 2월 3일에 추가된 메뉴 관련 스타일 */
.menuBar
{
POSITION: relative;
BACKGROUND-COLOR: transparent;
TEXT-ALIGN: center
}
.Bar
{
BORDER-RIGHT: #91C4D7 1px outset;
BORDER-TOP: #91C4D7 1px outset;
FLOAT: left;
BORDER-LEFT: #91C4D7 1px outset;
WIDTH: 100px;
CURSOR: hand;
TEXT-INDENT: 5px;
BORDER-BOTTOM: #91C4D7 1px outset;
POSITION: relative;
BACKGROUND-COLOR: deepsky#91C4D7;
TEXT-ALIGN: center
}
.menu
{
BORDER-RIGHT: buttonhighlight thin outset;
BORDER-TOP: buttonhighlight thin outset;
VISIBILITY: hidden;
BORDER-LEFT: buttonhighlight thin outset;
WIDTH: 150px;
LINE-HEIGHT: 140%;
BORDER-BOTTOM: buttonhighlight thin outset;
POSITION: absolute;
BACKGROUND-COLOR: deepsky#91C4D7
}
.menuItem
{
PADDING-RIGHT: 15px;
PADDING-LEFT: 10px;
WIDTH: 100%;
CURSOR: hand;
LINE-HEIGHT: 20px;
BORDER-BOTTOM: white 1px solid
}
.ItemMouseOver
{
PADDING-RIGHT: 15px;
PADDING-LEFT: 10px;
WIDTH: 100%;
CURSOR: hand;
COLOR: highlighttext;
LINE-HEIGHT: 20px;
BORDER-BOTTOM: white 1px solid;
BACKGROUND-COLOR: highlight
}
.ItemMouseOut
{
WIDTH: 100%
}
.Arrow
{
FLOAT: right;
FONT-FAMILY: Webdings;
POSITION: absolute;
TEXT-ALIGN: left
}
.barOver
{
BORDER-RIGHT: #91C4D7 1px ridge;
BORDER-TOP: #91C4D7 1px ridge;
FLOAT: left;
BORDER-LEFT: #91C4D7 1px ridge;
WIDTH: 100px;
CURSOR: hand;
TEXT-INDENT: 5px;
BORDER-BOTTOM: #91C4D7 1px ridge;
POSITION: relative;
BACKGROUND-COLOR: deepsky#91C4D7;
TEXT-ALIGN: center
}
/* 여기까지 메뉴 관련 스타일 */
3) 'head.sub.php' 의 36번째 줄의 body tag 내의 내용을 다음과 같이 바꾸었습니다
<body leftmargin='<?=$cfg[leftmargin]?>' topmargin='<?=$cfg[topmargin]?>' <?=$script?> OnLoad="InitMenu()" Onclick="HideMenu(menuBar)" ID="Bdy">
4) head.phpd의 원래 메뉴 부분을 아래와 같이 대체하였습니다 (원래 파일의 45째 줄부터)
<!-- CasecadeMenu 시작 -->
<DIV Id="menuBar" class="menuBar" >
<DIV Id="Bar1" class="Bar" menu="menu1">Menu #1</DIV>
<DIV Id="Bar2" class="Bar" menu="menu2">Menu #2</DIV>
<DIV Id="Bar3" class="Bar" menu="menu3">Menu #3</DIV>
<DIV Id="Bar4" class="Bar" menu="menu4">Menu #4</DIV>
</DIV>
<!--MenuItem Definition -->
<div Id="menu1" class="menu" >
<div Id="menuItem1_1" class="menuItem" menu="menu6">SubMenu #1</div>
<div Id="menuItem1_2" class="menuItem" title="JavaScripts" cmd="http://javascript.internet.com/">JavaScript Source</div>
<div Id="menuItem1_3" class="menuItem" title="WDVL" cmd="http://www.wdvl.com">WDVL</div>
</div>
<div Id="menu2" class="menu">
<div Id="menuItem2_1" class="menuItem">Page #1</div>
<div Id="menuItem2_2" class="menuItem">Page #2</div>
<div Id="menuItem2_3" class="menuItem">Page #3</div>
</div>
<div Id="menu3" class="menu">
<div Id="menuItem3_1" class="menuItem">Page #1</div>
<div Id="menuItem3_2" class="menuItem">Page #2</div>
<div Id="menuItem3_3" class="menuItem">Page #3</div>
<div Id="menuItem3_4" class="menuItem" menu="menu5">SubMenu #4</div>
</div>
<div Id="menu4" class="menu">
<div Id="menuItem4_1" class="menuItem">Page #1</div>
<div Id="menuItem4_2" class="menuItem">Page #2</div>
<div Id="menuItem4_3" class="menuItem">Page #3</div>
<div Id="menuItem4_4" class="menuItem">Page #4</div>
</div>
<div id="menu5" class="menu">
<div Id="menuItem5_1" class="menuItem">Page #4-1</div>
<div Id="menuItem5_2" class="menuItem">Page #4-2</div>
<div Id="menuItem5_3" class="menuItem">Page #4-3</div>
</div>
<div id="menu6" class="menu">
<div Id="menuItem6_1" class="menuItem">Page #1-1</div>
<div Id="menuItem6_2" class="menuItem">Page #1-2</div>
<div Id="menuItem6_3" class="menuItem" menu="menu7">SubMenu #1-1</div>
</div>
<div id="menu7" class="menu">
<div Id="menuItem7_1" class="menuItem">Page #1-1-1</div>
<div Id="menuItem7_2" class="menuItem">Page #1-1-2</div>
<div Id="menuItem7_3" class="menuItem">Page #1-1-3</div>
</div>
<!-- CasecadeMenu 끝 -->
너무 긴 글 끝까지 읽어주셔서 감사합니다. 님들의 도움을 간절히 바라며 이만 줄입니다.
아 그리고 혹시 지질학에 관심 있으신 분은
http://www.kroearth.net 도 둘러보시고,
모두 행복한 설 쇠세요.
댓글 전체
그림클릭 했을때 원본 이미지 보여주는건데
없어도 잘되더라고요.
없어도 잘되더라고요.
답변 감사합니다. body 태그 내의 'OnLoad'와 gbview.skin.php의 두번째 자바스크립트 내 'window.onload'가 서로 충돌하는 것 같습니다. 이 두번째 자바스크립트만 코멘트 처리하니까 되네요. 덕분에 한 시름 놓았습니다. 다시 한 번 감사.
하지만 이 자바스크립트도 필요할텐데, 이 충돌을 어떻게 해결하는 방법은 없을까요?
하지만 이 자바스크립트도 필요할텐데, 이 충돌을 어떻게 해결하는 방법은 없을까요?
gbview.skin.php 스킨파일에서 이부분과
<script language="JavaScript">
<!--
function image_window2(src)
{
var img = src.src;
var tmp_w = w = src.tmp_width;
var tmp_h = h = src.tmp_height;
winl = (screen.width-w)/2;
wint = (screen.height-h)/3;
if (w >= screen.width) {
winl = 0;
w = screen.width - 10;
h = (parseInt)(w * (h / w));
}
if (h >= screen.height) {
wint = 0;
h = screen.height - 80;
w = (parseInt)(h * (w / h));
}
var settings ='width='+w+',';
settings +='height='+h+',';
settings +='top='+wint+',';
settings +='left='+winl+',';
settings +='scrollbars=no,';
settings +='resizable=no,';
settings +='status=no';
win=window.open("","newWindow",settings);
win.document.open();
win.document.write ("<html><head><meta http-equiv='content-type' content='text/html; charset=euc-kr'>");
win.document.write ("<title>이미지 보기</title></head>");
win.document.write ("<body leftmargin=0 topmargin=0>");
win.document.write ("<img src='"+img+"' width='"+w+"' height='"+h+"'border=0 onclick='window.close();' style='cursor:hand'>");
win.document.write ("</body></html>");
win.document.close();
if(parseInt(navigator.appVersion) >= 4){win.window.focus();}
}
//-->
</script>
////////////////////////////
멘아래
<script language="JavaScript">
<!--
// HTML 로 넘어온 <img ... > 태그의 폭이 테이블폭보다 크다면 테이블폭을 적용한다.
// 제로보드 참고
function resize_image()
{
var target = document.getElementsByName('target_resize_image[]');
for(i=0; i<target.length; i++) {
// 원래 사이즈를 저장해 놓는다
target[i].tmp_width = target[i].width;
target[i].tmp_height = target[i].height;
// 이미지 폭이 테이블 폭보다 크다면 테이블폭에 맞춘다
if(target[i].width > document.main_table.width)
target[i].width = document.main_table.width;
}
}
window.onload = resize_image;
//-->
</script>
지우고 사용 하시면 잘될거예요
제가 이부분지우고 하니 잘되더라고요^^
<script language="JavaScript">
<!--
function image_window2(src)
{
var img = src.src;
var tmp_w = w = src.tmp_width;
var tmp_h = h = src.tmp_height;
winl = (screen.width-w)/2;
wint = (screen.height-h)/3;
if (w >= screen.width) {
winl = 0;
w = screen.width - 10;
h = (parseInt)(w * (h / w));
}
if (h >= screen.height) {
wint = 0;
h = screen.height - 80;
w = (parseInt)(h * (w / h));
}
var settings ='width='+w+',';
settings +='height='+h+',';
settings +='top='+wint+',';
settings +='left='+winl+',';
settings +='scrollbars=no,';
settings +='resizable=no,';
settings +='status=no';
win=window.open("","newWindow",settings);
win.document.open();
win.document.write ("<html><head><meta http-equiv='content-type' content='text/html; charset=euc-kr'>");
win.document.write ("<title>이미지 보기</title></head>");
win.document.write ("<body leftmargin=0 topmargin=0>");
win.document.write ("<img src='"+img+"' width='"+w+"' height='"+h+"'border=0 onclick='window.close();' style='cursor:hand'>");
win.document.write ("</body></html>");
win.document.close();
if(parseInt(navigator.appVersion) >= 4){win.window.focus();}
}
//-->
</script>
////////////////////////////
멘아래
<script language="JavaScript">
<!--
// HTML 로 넘어온 <img ... > 태그의 폭이 테이블폭보다 크다면 테이블폭을 적용한다.
// 제로보드 참고
function resize_image()
{
var target = document.getElementsByName('target_resize_image[]');
for(i=0; i<target.length; i++) {
// 원래 사이즈를 저장해 놓는다
target[i].tmp_width = target[i].width;
target[i].tmp_height = target[i].height;
// 이미지 폭이 테이블 폭보다 크다면 테이블폭에 맞춘다
if(target[i].width > document.main_table.width)
target[i].width = document.main_table.width;
}
}
window.onload = resize_image;
//-->
</script>
지우고 사용 하시면 잘될거예요
제가 이부분지우고 하니 잘되더라고요^^