php
  • javascript
  • 2012-12-31 1 views 2 likes 
    2

    의 두 줄을 사용하여 기억, 다음 스크립트는 다시로드에 이전 수직 위치에 페이지를 반환이 페이지 위치는 인터넷 익스플로러를 제외한 모든 주요 브라우저에서 스크립트

    <?php $y = $_COOKIE["y"]; ?> //in head tag before any output 
    

    <?php 
    print "<body onScroll=\"document.cookie='y=' + window.pageYOffset\" onLoad='window.scrollTo(0,$y)'>"; 
    

    수 누군가 IE의 페이지 수직 위치를 기억하도록이 코드를 수정하는 방법을 알려주십시오. 감사. w3Schools에서

    답변

    2

    :

    인터넷 익스플로러 8 이전 버전이 속성을 지원하지 않지만 "document.body.scrollLeft"대신 "document.body.scrollTop"를 사용할 수 있습니다.

    +0

    감사합니다, AlecTMH,하지만 내 질문은 어떻게 이것을 달성하기 위해 내 코드를 수정합니까? 다른 포럼에서이 팁을 얻었지만 자바 스크립트 사용자는 아닙니다. – Gosundi

    +0

    'window.pageYOffset'를'document.body.scrollTop'으로 바꾸어보세요. – AlecTMH

    +0

    나는 이것에 대해 스스로 생각했지만 불행하게도 작동하지 않습니다. 다른 제안이 있으십니까? 감사. – Gosundi

    1

    나는 기본 IE /하지-IE 브라우저 탐지를 수행하려면 다음 코드를 사용

    if(document.all) { //if IE 
        //code 
    } else {   //if not IE 
        //code 
    } 
    

    당신이 어디로 가는지 얻을 AlecTMH의 document.body.scrollLeftdocument.body.scrollTop 제안에이를 결합 할 수 있어야한다. 그러나 당신은 아마도 함수를 작성해야하고 onScroll()에서 호출해야 할 것입니다.

    나는

    function blah() { 
        if(document.all) { //if IE 
         document.cookie='y=' + document.body.scrollTop 
        } else {   //if not IE 
         document.cookie='y=' + window.pageYOffset 
        } 
    } 
    

    은 ... 거의 기능 코드 수 있습니다 ... 정확히 자바 스크립트 대단한 아니지만.

    +0

    와우! 나는 해결책이 이것보다 훨씬 더 복잡 할 것이라고 생각했다. 시도해 볼게. – Gosundi

    관련 문제