디자인 수정 커밋밋

This commit is contained in:
2025-10-17 16:26:45 +09:00
parent 7a57faa87b
commit 2aaf24348e
4 changed files with 273 additions and 68 deletions

View File

@@ -69,12 +69,71 @@
body {
transition: all 0.3s ease;
}
/* 고정 버튼 스타일 */
#menu-lock-btn {
position: absolute;
top: 10px;
right: 10px;
width: 30px;
height: 30px;
background-color: #f5f5f5;
border: 1px solid #ddd;
border-radius: 5px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.3s ease;
z-index: 10000;
}
#menu-lock-btn:hover {
background-color: #e8e8e8;
border-color: #1159bc;
}
#menu-lock-btn.locked {
background-color: #1159bc;
border-color: #1159bc;
}
#menu-lock-btn svg {
width: 18px;
height: 18px;
fill: #666;
transition: fill 0.3s ease;
}
#menu-lock-btn.locked svg {
fill: #fff;
}
</style>
<script type="text/javascript">
// 메뉴 고정 상태 플래그
var isMenuLocked = false;
$(function(){
$(document).ready(function () {
// 메뉴 고정 버튼 클릭 이벤트
$(document).on('click', '#menu-lock-btn', function() {
isMenuLocked = !isMenuLocked;
$(this).toggleClass('locked');
// 아이콘 전환
if(isMenuLocked) {
$(this).find('.lock-icon-unlocked').hide();
$(this).find('.lock-icon-locked').show();
console.log("메뉴 고정됨");
} else {
$(this).find('.lock-icon-unlocked').show();
$(this).find('.lock-icon-locked').hide();
console.log("메뉴 고정 해제됨");
}
});
//메뉴 슬라이드토글
$("[objType=menuObj]").on('click', function(){
var url = $(this).attr("url");
@@ -122,6 +181,11 @@ $(function(){
// 메뉴 영역에서 마우스가 벗어났을 때 자동 숨김 (애니메이션 적용)
var hideMenuTimer;
$(document).mouseleave(function(e) {
// 메뉴가 고정되어 있으면 자동 숨김 안 함
if(isMenuLocked) {
return;
}
// 마우스가 메뉴 프레임을 벗어났을 때
clearTimeout(hideMenuTimer);
hideMenuTimer = setTimeout(function() {
@@ -135,7 +199,7 @@ $(function(){
} catch(e) {
console.log("Toggle frame not accessible:", e);
}
}, 500); // 1.5초 후 자동 숨김
}, 500); // 0.5초 후 자동 숨김
});
// 메뉴 영역에 마우스가 다시 들어왔을 때 타이머 취소
@@ -429,16 +493,19 @@ function add_menu(objid, subMenuObjid, onlyViewMenu){
}
// 메뉴 그리기 완료 후 자동 숨김 처리 (애니메이션 적용)
// 메뉴가 고정되어 있지 않을 때만 자동 숨김
setTimeout(function() {
try {
if(parent && parent.frames && parent.frames["toggle_page"]) {
var toggleFrame = parent.frames["toggle_page"];
if(toggleFrame.fntg_changeSizeWithAnimation) {
toggleFrame.fntg_changeSizeWithAnimation();
if(!isMenuLocked) {
try {
if(parent && parent.frames && parent.frames["toggle_page"]) {
var toggleFrame = parent.frames["toggle_page"];
if(toggleFrame.fntg_changeSizeWithAnimation) {
toggleFrame.fntg_changeSizeWithAnimation();
}
}
} catch(e) {
console.log("Toggle frame not accessible:", e);
}
} catch(e) {
console.log("Toggle frame not accessible:", e);
}
}, 300);
}
@@ -467,8 +534,18 @@ function sel_menu(objid, subMenuObjid, onlyViewMenu){
</script>
</head>
<body id="menuback_w" style="height:100%;overflow-y: hidden;">
<body id="menuback_w" style="height:100%;overflow-y: hidden; position: relative;">
<form name="menuForm" action="" method="post">
<!-- 메뉴 고정 버튼 -->
<div id="menu-lock-btn" title="메뉴 고정/해제">
<svg viewBox="0 0 24 24" class="lock-icon-unlocked">
<path d="M12,17A2,2 0 0,0 14,15C14,13.89 13.1,13 12,13A2,2 0 0,0 10,15A2,2 0 0,0 12,17M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6A2,2 0 0,1 4,20V10C4,8.89 4.9,8 6,8H15V6A3,3 0 0,0 12,3A3,3 0 0,0 9,6H7A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18Z"/>
</svg>
<svg viewBox="0 0 24 24" class="lock-icon-locked" style="display:none;">
<path d="M12,17A2,2 0 0,0 14,15C14,13.89 13.1,13 12,13A2,2 0 0,0 10,15A2,2 0 0,0 12,17M18,8A2,2 0 0,1 20,10V20A2,2 0 0,1 18,22H6A2,2 0 0,1 4,20V10C4,8.89 4.9,8 6,8H7V6A5,5 0 0,1 12,1A5,5 0 0,1 17,6V8H18M12,3A3,3 0 0,0 9,6V8H15V6A3,3 0 0,0 12,3Z"/>
</svg>
</div>
<!--
<div style="background:#f5f5f5;color:#000;font-size:11px;text-align:center;padding:5px;line-height:15px">Integrated Information<br/> Management System </div>
-->