묻고답하기
스크롤 레이어가 작동이 제대로 안되네요?
2008.07.25 02:27
아래 스크롤 레이어 소스를
레이아웃 파일에 붙혀 넣기 하니 작동이 안되네요 스크롤 올리고 내리고에 따라 작동이 되어야 되는데 안됩니다.
아래소스를 그대로 붙혀 넣기 하니 작동이 안되는데
어느 파일에 어떻게 붙혀 넣기 해야 작동이 됩니까?
이 소스 각 부분 별로 붙혀 넣기 해서는 작동이 안됩니다.
제가 시도 해본것은...
1. layout.html 파일에 자바 스크립트 부분과 레이어부분을 붙혀 넣기해보았으나 안됨
2. 각 부분별로 자바스크립트는 js 폴더의 자바스크립트 파일에 붙혀 넣고 js 파일을 layout.html 파일에 삽입(import) 시켜봄 역시 안됨
몇번을 시도를 해봤으나 안됨 그래서 생각해볼 수 있는 것은
1.일반 html 헤드 부분에 넣는 스크립트 용어와 이 스크립트 용어를 제로보드상에 넣을때 표기 형식이 다른가?
2. 자바스크립트 부분에서 변수에 숫치를 넣는 부분에서 수치를 달리 넣어줘야 하나?
참고로 이 소스가 그대로 html.문서로 만들어서 실행 해보면 작동이 잘됨 그런데 제로보드상의 레이아웃파일(layout.html) 에 소스 글자 하나 틀리지 않고 붙혀 넣기 하였으나 작동 안됨
현재 해결을 못한채 헤매고 있음 고수님들 작동되게 하는 방법을 수고스럽지만 가르쳐주시면 감사하겠습니다.
----------------------
<html>
<head>
<title>항상 보이는 레이어</title>
<script language="javascript">
//---------------------------------------------자바스크립트 부분
var offsetX = 5;
var offsetY = 50;
window.onload = scrollHandler;
function scrollHandler() {
var objVisible = document.getElementById("alwaysVisible");
var targetY = document.body.scrollTop + offsetY;
var currentY = parseInt(objVisible.style.top);
if (currentY != targetY) {
objVisible.style.left = offsetX;
var scrollAmount = Math.ceil( Math.abs(targetY - currentY) / 20 )
if (currentY > targetY) {
objVisible.style.top = currentY - scrollAmount;
}
else {
objVisible.style.top = currentY + scrollAmount;
}
}
setTimeout(scrollHandler, 10);
}
</script>
</head>
<body>
<div style="height:2048px"></div>
//----------------------------------------------------------------스크롤 레이어 부분과 css 적용 부분
<div id="alwaysVisible" style="position:absolute;
border:solid 3px #FFA500;top:400px;left:600px;
color:#FFA500;width:150px;height:150px;
padding:10px 10px 10px 10px">
이 영역이 항상 보입니다.
</div>
</body>
</html>