퀵메뉴(중앙정렬틀에서 오른쪽) 파이어폭스에서의 동작???

· 15년 전 · 2063 · 2

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
선언시에
파이어폭스에서는 스크립트 동작없이 고정이되어있습니다.
위 부분 생략하고
그냥
<html>~로 나가면 동작합니다.

좋은 방법없을까요?

꼭 이방법이 아니더라도
오른쪽 퀵메뉴(중앙정렬 홈페이지에서...)
소스정보 있음 알려주세요

부탁드립니다.


============================================
<!--퀵메뉴시작 -->
<div id="q_menuArea">
<div id="floater" style="top: 150px; left: 0px; position: relative; z-index:1;">
   <div style="border:1px dotted blue">
    메뉴1<br />
    메뉴2<br />
    메뉴3
   </div>
</div>
<script language="javascript" type="text/javascript">
   //기본 세팅 부분
   var Ly  = document.getElementById("floater"); //따라댕길 레이어
   var fixX = 0; //레이어 가로 위치 (위 div 의 style 에서 left 와 값을 같게...)
   var fixY = 150; //레이어 세로 위치 (위 div 의 style 에서 top 과 값을 같게...)
   var scrollDelay = 10; // y축 스크롤 바가 움직인후  0.01초후에 작동합니다.
   var movingSpeed = 40; // 1/40 의 속도로 움직입니다.
   function scrollLayer(){
    var movingDistc;
    var destY = Math.max(document.documentElement.scrollTop, document.body.scrollTop) + fixY;
    var LyTop = parseInt(Ly.style.top);
    if(destY > LyTop) {
     movingDistc = ((destY - LyTop + fixY)/movingSpeed);
    } else {
     movingDistc = ((destY - LyTop)/movingSpeed);
    }
    Ly.style.top = LyTop + movingDistc ;
    Ly.style.left = fixX;
    setTimeout("scrollLayer()",scrollDelay);
   }
   scrollLayer(); //함수 호출
  </script>

</div>
<!--퀵메뉴끝 -->
=================================================

|

댓글 2개

01.<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
02.<html xmlns="http://www.w3.org/1999/xhtml" lang="ko" xml:lang="ko">
03.<head>
04.<meta http-equiv="content-type" content="text/html; charset=ecu-kr" />
05.<title>보짱넷::vozzang.net</title>
06.<script type="text/javascript">
07.//----------------------------------------------
08.//Floating v1.1 Source By Bermann
09.//dobermann75@gmail.com
10.//----------------------------------------------
11.

12.//new Floating(적용할개체 , X축여백 , Y축여백 , 미끄러지는속도:작을수록빠름..기본20 , 빠르기:작을수록부드러움..기본10);
13.

14.function Floating(FloatingObj,MarginX,MarginY,Percentage,setTime) {
15.
this.FloatingObj = FloatingObj;
16.
this.MarginX = (MarginX) ? MarginX : 900;
17.
this.MarginY = (MarginY) ? MarginY : 0;
18.
this.Percentage = (Percentage) ? Percentage : 20;
19.
this.setTime = (setTime) ? setTime : 10;
20.
this.FloatingObj.style.position = "absolute";
21.
this.Body = null;
22.
this.setTimeOut = null;
23.
this.Run();
24.}
25.

26.Floating.prototype.Run = function () {
27.
if ((document.documentElement.scrollLeft + document.documentElement.scrollTop) > (document.body.scrollLeft + document.body.scrollTop)) {
28.
this.Body = document.documentElement;
29.
} else {
30.
this.Body = document.body;
31.
}
32.

33.
var This = this;
34.
var FloatingObjLeft = (this.FloatingObj.style.left) ? parseInt(this.FloatingObj.style.left,10) : this.FloatingObj.offsetLeft;
35.
var FloatingObjTop = (this.FloatingObj.style.top) ? parseInt(this.FloatingObj.style.top,10) : this.FloatingObj.offsetTop;
36.
var DocLeft = this.Body.scrollLeft + this.MarginX;
37.
var DocTop = this.Body.scrollTop + this.MarginY;
38.

39.
var MoveX = Math.abs(FloatingObjLeft - DocLeft);
40.
MoveX = Math.ceil(MoveX / this.Percentage);
41.
var MoveY = Math.abs(FloatingObjTop - DocTop);
42.
MoveY = Math.ceil(MoveY / this.Percentage);
43.

44.
if (FloatingObjLeft < DocLeft) {
45.
this.FloatingObj.style.left = FloatingObjLeft + MoveX + "px";
46.
} else {
47.
this.FloatingObj.style.left = FloatingObjLeft - MoveX + "px";
48.
}
49.

50.
if (FloatingObjTop < DocTop) {
51.
this.FloatingObj.style.top = FloatingObjTop + MoveY + "px";
52.
} else {
53.
this.FloatingObj.style.top = FloatingObjTop - MoveY + "px";
54.
}
55.

56.
window.clearTimeout(this.setTimeOut);
57.
this.setTimeOut = window.setTimeout(function () { This.Run(); },this.setTime);
58.}
59.</script>
60.

61.<style type="text/css">
62.body {height:800px;}
63.#quickmenu {position:absolute; top:100px; left:100px; width:90px;}
64.#quickmenu ul {width:90px; padding:5px 0 0 0;}
65.#quickmenu ul li {padding:5px 0 5px 0; text-align:center;}
66.</style>
67.

68.</head>
69.<body>
70.<div id="quickmenu">
71.<ul>
72.<li><a href="#">메뉴</a></li>
73.<li><a href="#">메뉴</a></li>
74.<li><a href="#">메뉴</a></li>
75.<li><a href="#">메뉴</a></li>
76.<li><a href="#">메뉴</a></li>
77.</ul>
78.</div>
79.

80.<script>
81.//사용법 new Floating(적용할개체 , X축여백 , Y축여백 , 미끄러지는속도:작을수록빠름..기본20 , 빠르기:작을수록부드러움..기본10);
82.new Floating(document.getElementById("quickmenu"),100,150,30,10);
83.</script>
84.

85.</body>
86.</html>


[출처 : http://www.vozzang.net/431 ]
감사합니다.

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기
🐛 버그신고