2012-07-09 5 views
1

본문로드 전에 50px 페이지를 스크롤하려고합니다. 하지만 코드를 실행하기 전에 항상 body load를 기다린다.본체를로드하기 전에 javascript로 페이지를 스크롤하는 방법은 무엇입니까?

나는 이유가 무엇인지 잘 모르겠다. 나는 그들이 파싱 될 때마다 기억이 나는 것처럼 보인다.

$(document).scrollTop('50'); 
window.scrollBy(0,50); 

가 어떻게이 몸로드하기 전에 작동해야합니까 : 나는 모두, JQuery와 및 일반 자바 스크립트로 시도

이 내 코드? 아무것도 약이에
한 방향으로 일이 없을 것이다 있도록 이벤트를 호출 시체가없는

+2

몸이 분석되고 당신은 어떤 HTML을로드하기 전에 빈 페이지를 스크롤 할 뜻 화면 – Esailija

+0

에 렌더링되기 전에 스크롤 아무것도 없다? –

+0

바디 불투명도를 0으로 설정하고 본문로드시 스크롤을 실행하고 마지막으로 불투명도를 1로 설정하면 이미 스크롤되어 표시됩니다. – Onheiron

답변

0

그 때문에 일부 상수
몸의 높이를 설정하고 body 태그에 onLoad 이벤트를 추가입니다

<script> 
SomeFunction(){ 
//scrollNow 
} 
</Script> 
<body onLoad="SomeFunction()" style="height:500px;"></body> 
0

하나의 해결책을 찾았을 때 누군가가 더 깨끗한 해결책을 찾을 수 있습니다. 이 심지어 온로드 전에 페이지를 스크롤 할 수 있습니다 :

document.writeln('&nbsp;'); 
document.body.style.height = '5000px'; 
$(window).scrollTop(50); 

Test script here합니다.

0
1. Create css offset class and assign to the body 

    .offset{ 
     margin-top:-500px; 
     } 

    So that body will be loaded with 500px offset from top 

    2. Then add following code to the body 

     <body class="offset" onLoad="window.scroll(0, 150)"> 

    3. then using jquery, remove offset class when page is loaded 

     $(document).ready(function(){ 
     $(".row").removeClass("offset"); 
     }); 

이 작동합니다 http://www.frameinn.com/thatisuday/about

관련 문제