2012-02-21 3 views
0

나는 이것을 짧게하려고 노력할 것이다. 나는 다양한 섹션이있는 페이지가 있습니다. 한 섹션에는 Google지도가있는 iframe이 있습니다. infowindows에서 나는 클릭했을 때 iframe에없는 fancybox에서 열 수있는 링크가있다. 나는 그렇게 할 수있다. 예를 들어, "google"이라고 말하는 링크가있는 경우 fancybox의 전체 페이지에서 http://www.google.co.uk/을 여는 것이 좋습니다.iframe의 오픈 링크

나는 2 개의 다른 페이지와 2 개의 자바 스크립트가 있으며, 1 개는 맵 (iframe)이고 다른 하나는 메인 페이지입니다. 이 기능은 메인 페이지 스크립트에 있습니다.

내가 잘못 가고 있다고 생각하는 곳은 a) 페이지를 여는 올바른 호출 b) javascript 즉 class = "fancybox"에 클래스를 연결하는 것입니다. 내 main.js에서

<a href="javascript:parent.openSomething();">some content</a> 

:

내지도의 정보 창은이 링크 (map.js)가

function openSomething() { 

//this is where i think im going wrong 
//ive tried window. and top. etc 

var url = "http://www.google.co.uk/"; 

document.location.href = url 

}; 

멋진 상자 내 호출은 메인 페이지에 .

도움을 주시면 감사하겠습니다.

+0

새 코드에 마무리 부호가 누락되었습니다. –

답변

3

JavaScript를 사용할 필요가 없습니다. 원하는 링크를 href 속성으로 설정하고 target 속성을 사용하여 열 위치를 정의하십시오.

  • target="_top"는 상위 프레임 또는 페이지 새 창에서 열립니다
  • target="_blank"에서 열립니다 전체 페이지
  • target="_parent"의 새로운 링크를 열 것입니다.
+0

'class' 속성을 사용하여 클래스를 링크에 연결합니다 :'a class = "myclass"' –

+0

응답을 주셔서 감사합니다. 그러나 나는 질문을 많이 단순화 시켰다고 생각합니다. 질문을 편집하십시오. – Hatzi

+0

@Hatzi 우, 전체 페이지 fancybox 실제로 훨씬 더 복잡하게 :) Fancybox 지원 programmatical 링크를 트리거링합니까? 그렇게된다면,'parent.openSomething'은 들리 겠지만; 적절한 매개 변수를 사용하여 Fancybox를 호출해야합니다. Fancybox가 API 호출을 지원하지 않는다면, 나는 대체 방법이 있다는 것을 알고 있습니다. –

관련 문제