2010-12-03 5 views
2

그래서 내가 원하는이하는 것입니다 : self.location자바 스크립트 : self.location 이벤트를 가져 오는 방법을 변경 하시겠습니까?

if (top != self) { 
    top.location = self.location; 
} 

을; 변경 이벤트. (정말 필요한 경우 Jquery를 사용하는 것이 가능하지만 그렇게하지 않는 것이 좋습니다.) 가능하고 어떻게 할 수 있습니까?

메인 아이디어는 모든 팝업 창을 맨 위에 두는 것입니다. 그리고 여기서 우리는 윈도우 코드를 수정하여 사용자가 주 페이지를 클릭 할 때 맨 위에 올 수 있도록 새로운 페이지를 열려고합니다. 그래서 Ifigured 우리는 구독하고 self.location 변경 이벤트를 듣는다. 나는 그것을하는 방법을 궁금해?

답변

6

'프레임 붕괴'를하려고합니까? 아니면 언제 최고인지를 알고 싶습니까? 위치가 바뀌 었습니까? 후자의 경우 URL의 해시 태그 값 변경을 감지하는 것으로 가정합니다. 그렇지 않으면 위치 변경으로 인해 새 페이지가로드되어 JS가 실행되지 않을 수 있습니다.

해시 태그 변경 이벤트 (즉 URL의 # 뒤에 오는 콘텐츠)를 확인하려면 SO : On-Window-Location-Hash-Change과 유사한 질문을 읽어보십시오.

프레임 쪼개기에 관한 것이면 Frame Buster Buster과 같이 SO에 관한 많은 좋은 질문이 있습니다.

흥미로운 블로그 게시물은 Coding Horror입니다.

1

if (top.location != self.location) { top.location=self.location; } 
+0

예.하지만 한 번만 찾을 필요는 없습니다. 어떻게 든 이벤트를 변경하려면 구독해야합니다. – Rella

+0

위의 내용을 setInterval에 붙여 넣으십시오. –

+0

@ box9가 나쁜 ideato처럼 보입니다. JS - 필요에 따라 응답이 없거나 CPU가 많지 않습니다. – Rella

관련 문제