2012-03-26 3 views
1

page2로로드 된 iframe을 스크롤하는 작은 javascript/jquery 스크립트가 page1 (aspx 페이지)에 있습니다. 그러면 스크롤 할 때 페이지에 머물러있게됩니다. 아래로 그러나, 다른 상위 페이지에 대한 iframe 내부 page1로드 할 때 스크롤 영향을 작동하지 않습니다.Jquery가있는 iframe 내부의 자식에서 부모 창 스크롤 이벤트에 액세스

호출에서 window.parent를 사용해 보았지만 상위 페이지 (다른 aspx 페이지)의 iframe 내에서 page1을 스크롤 할 때 스크립트는 여전히 활성화되지 않고 page2 iframe을 스크롤합니다. 나는 그것이 의미가 있기를 바랍니다. 여기

내가 시도한 스크립트입니다

<script type="text/javascript"> 
     $(window.parent.document).ready(function() { 
      var $scrollingDiv = $("#IframeDir"); 

      $(window.parent).scroll(function() { 
       $scrollingDiv 
       .stop() 
       .animate({ "marginTop": ($(window.parent).scrollTop() + -10) + "px" }, "slow"); 

      }); 
     }); 


    </script> 

난 그냥 자신의 탭이나 창에서 PAGE1을로드하는 경우 그것은 작동하지만, 내가 부모 페이지에 iframe을 내 PAGE1을로드하는 경우, 그것은 '아무튼 부모 페이지의 스크롤 이벤트를 보는 것 같습니다.

미리 제안 해 주셔서 감사합니다. 에린

+0

이 기능을 사용하려면 부모 페이지에 필요한 것이 있습니까? – Erin

답변

0

$(window.parent).scroll()$(document).ready() 또는이 경우 $(window.parent.document).ready()에서 호출 할 수 있다고 생각하지 않습니다. 내가 할,

$(document).ready(function() { 
//document ready functions go here 
}); 

$(parent.window).scroll(function() { 
//parent document scroll functions go here 
}); 

그리고 다른 질문에 답 : 그 문제에 나는 $(window.parent).scroll() 내가 그것을이 내가 전에 그것을 한 적이 어떻게 $(parent.window).scroll()

할 필요가 생각이 전혀 아닌 것 같다 부모 페이지에서도 jQuery가 필요하다고 생각합니다.

2

이 대답 Run JQuery in the context of another frame

당신은

// Untested 
$(window.parent.document, window.parent.document).ready(function() { 
    var $scrollingDiv = $("#IframeDir"); 

    $(window.parent, window.parent.document).scroll(function() { 
     $scrollingDiv 
     .stop() 
     .animate({ "marginTop": ($(window.parent, window.parent.document).scrollTop() + -10) + "px" }, "slow"); 

    }); 
}); 
1

가 나는 또한 iframe 내에 부동 사업부를 원하고 Rantul이 코드는 나를 위해 일한 (부모 문서)에서 검색 할 수 맥락에서 통과해야을 참조하십시오!

$(parent.window).scroll(function() { 
    //parent document scroll functions go here 
}); 
관련 문제