파이어폭스에서 사이드뷰사용시 문제가 있는데요.. 정보
파이어폭스에서 사이드뷰사용시 문제가 있는데요..
본문
참고로 익스플로러에서는 잘되고 있습니다. 익스플로러는 6.0이구요
파이어폭스는 2.0~버전입니다.
코드를 요리조리 찾아가본결과 아래부분이 문제가 있는듯 한데요 alert로 메시지를 띄어본 결과
익스플로러에서 alert(oSideViewLayer.style.top)햇을경우 값이 제대로 나옵니다. 하지만 파이어 폭스에서는 아무 값도 보이지 않더군요 그래서 값을 직접 아래와 같이 대입해본후
oSideViewLayer.style.top=100;
alert( oSideViewLayer.style.top); 해봤는데요 익스플로러에서는 역시 잘 나오지만
파이어폭스에서는 아무값도 안나오네요...
현재 문제점은 익스플로러에서는 클릭한 위치에 사이드뷰가 잘 나오지만..
파이어폭스에서는 클릭을 하면 left가 0상태이구요 맨하단에 위치하고 있습니다. 레이어 끼리 충돌인가요?? absolute라 문제 없을듯 한데.. oSideViewLayer.style.top에는 왜 파이어폭스에서 값이 들어가지 않을까요?? 답변좀 부탁드립니다. ㅠㅠ
if (getAbsoluteTop(this.curObj) + this.curObj.offsetHeight + oSideViewLayer.scrollHeight + 5 > oBody.scrollHeight)
oSideViewLayer.style.top = getAbsoluteTop(this.curObj) - oSideViewLayer.scrollHeight;
else
oSideViewLayer.style.top = getAbsoluteTop(this.curObj) + this.curObj.offsetHeight;
파이어폭스는 2.0~버전입니다.
코드를 요리조리 찾아가본결과 아래부분이 문제가 있는듯 한데요 alert로 메시지를 띄어본 결과
익스플로러에서 alert(oSideViewLayer.style.top)햇을경우 값이 제대로 나옵니다. 하지만 파이어 폭스에서는 아무 값도 보이지 않더군요 그래서 값을 직접 아래와 같이 대입해본후
oSideViewLayer.style.top=100;
alert( oSideViewLayer.style.top); 해봤는데요 익스플로러에서는 역시 잘 나오지만
파이어폭스에서는 아무값도 안나오네요...
현재 문제점은 익스플로러에서는 클릭한 위치에 사이드뷰가 잘 나오지만..
파이어폭스에서는 클릭을 하면 left가 0상태이구요 맨하단에 위치하고 있습니다. 레이어 끼리 충돌인가요?? absolute라 문제 없을듯 한데.. oSideViewLayer.style.top에는 왜 파이어폭스에서 값이 들어가지 않을까요?? 답변좀 부탁드립니다. ㅠㅠ
if (getAbsoluteTop(this.curObj) + this.curObj.offsetHeight + oSideViewLayer.scrollHeight + 5 > oBody.scrollHeight)
oSideViewLayer.style.top = getAbsoluteTop(this.curObj) - oSideViewLayer.scrollHeight;
else
oSideViewLayer.style.top = getAbsoluteTop(this.curObj) + this.curObj.offsetHeight;
댓글 전체
oSideViewLayer.style 이게 안먹힌다는 것은 oSideViewLayer.style.position = 'absolute'; 이것도 안먹히니까.. 맨밑으로 가는건 맞는듯 한데요.. 흠.. 왜 파이어폭스에서만 스타일이 안먹히지 ㅠㅠ
oSideViewLayer.style.top = getAbsoluteTop(this.curObj) - oSideViewLayer.scrollHeight + 'px';
oSideViewLayer.style.top = getAbsoluteTop(this.curObj) + this.curObj.offsetHeight + 'px';
oSideViewLayer.style.left = getAbsoluteLeft(this.curObj) - this.curObj.offsetWidth + 14 + 'px';
이렇게 세부분 뒤에 + 'px' 를 했더니 파이어 폭스에서도 위치가 잘 잡히네요
oSideViewLayer.style.top = getAbsoluteTop(this.curObj) + this.curObj.offsetHeight + 'px';
oSideViewLayer.style.left = getAbsoluteLeft(this.curObj) - this.curObj.offsetWidth + 14 + 'px';
이렇게 세부분 뒤에 + 'px' 를 했더니 파이어 폭스에서도 위치가 잘 잡히네요
감사합니다. ^^ 근데 크롬에서는 또 안되네요 =_=