2014-09-27 1 views
0

* 참고 : 도메인 간 시나리오를 *사용자가 iframe에서 탐색 할 때 iframe의 상위 페이지가 자동으로 맨 위로 스크롤되도록하려면 어떻게해야합니까?

수직 스크롤이 브라우저의 주요 수직 스크롤에 의해 이루어집니다 그래서, 브라우저 창보다 없는 스크롤바가 iframe을하지만, 훨씬 더 키가 있습니다. 스크롤링 다운 상태에서 탐색이 수행되면 스크롤은 부모에서 맨 위로 재설정되지 않습니다.

페이지 탐색이 iframe에서 발생할 때 자동으로이 스크롤을 초기화 최상위 상태로 재설정하고 싶습니다.

미리 감사드립니다.

답변

0

onload 이벤트를 iframe에 연결할 수 있습니다. 그것은 크로스 도메인 시나리오에서 얻을 수있는 몇 안되는 중 하나입니다.

document.getElementById("some_iframe").onload = function(){ window.scrollTo(0,0); } 
+0

불행히도 부모 페이지에 액세스 할 수 없습니다. 그것은 다른 도메인의 다른 공급자입니다 –

+0

아. iframe이 아닌 상위 페이지를 관리하고 있다고 생각했습니다. –

2

당신은 iframe 당신은 할 수 없습니다 크로스 도메인 문제 (당신의 웹 사이트가 아닌 다른 곳을 가리키는)가있는 경우 :
error : Permission denied to access property 'document'

그러나하지 않을 경우,이 코드를 사용하여 수행 할 수 있습니다.

var myframe = window.frames[0].window; 
myframe.onscroll = function(){if(myframe.scrollY == myframe.scrollMaxY){window.scrollTo(0,0);}}; 
//Thanks Diodeus! 

을 또는 당신은 getElementById 또는 다른 Similars 참조하여 선택하고 myframe 변수에 대한 참조를 제공 할 수 있습니다 : 페이지에서 스크립트에 이것을 추가합니다. 이것은 iframe에서 아래로 스크롤 한 다음 전체 문서를 위로 스크롤 할 때 이벤트를 트리거합니다.

관련 문제