2009-10-17 6 views
2

하이퍼 링크를 클릭 한 후 높이 600px 및 너비 200px의 새 창을 열고 싶습니다.하이퍼 링크를 클릭 할 때 새 창을 여는 방법은 무엇입니까?

HTML/자바 스크립트로 어떻게 할 수 있습니까?

나는 window.open과 같은 것을 사용합니까? IE에서도 호환됩니까? 아니면 Jquery에서 사용해야합니까?

미리 감사드립니다. 자바 스크립트를 사용하여 새 창을 만들기

+0

답변을 주셔서 감사합니다.하지만 어떻게이 방법으로 링크를 만드시겠습니까? 정상적으로 수행하는 방법을 알고 있습니다 "",하지만 window.open으로 어떻게 할 수 있습니까? – chris

+0

Chris, HTML을 작성한 다음 JavaScript를 첨부하여 창을 여는 방법에 대한 답변을 참조하십시오. http : // stackoverflow.co.kr/questions/1580987/how-to-open-a-new-window-a-click-a-hyperlink/1581020 # 1581020 –

답변

7

그것은 유사한로, 눈에 띄지 않게 하이퍼 링크이 첨부 훨씬 낫다 :

<a href="mypopup.htm" id="popup">This will open in a new window</a> 

자바 스크립트

window.onload = function() { 
    document.getElementById("popup").onclick = function(){ 
     return !window.open(this.href, "pop", "width=200,height=600"); 
    } 
} 

HTML이 방법의 장점은 너야 HTML에 하이퍼 링크 만 지정하면됩니다. 자바 스크립트가 비활성화되어 있으면 r은 어떤 이유로 든 오류를 발생시키고 표준 하이퍼 링크를 사용하는 것으로 대체됩니다.

+0

이것은 좋은 접근 방법입니다. 내 모든 상업적 물건은 모두 자바 스크립트를 사용할 수있는 통제 된 사용자 그룹을위한 것이라고 운이 좋다. :) this.href 비트를 사용하여 Jquery 선택기로이를 설정할 수 있으며 id 대신 전체 개체 클래스에 영향을 미칩니다. –

+0

정확합니다. 이 방법의 한 가지 용도는 새 창에서 열려는 모든 링크에 rel = "external"를 추가하고 JavaScript (또는 원하는 JavaScript 라이브러리)를 사용하여 이와 같은 새 창에서 열 수 있습니다. –

+0

내 asp.net 페이지에서 나는 그리드보기 및 모든 행을 gridview 동적으로 다른 링크를 만드는 있지만이 기술은 첫 번째 생성 된 링크 only.why ??? –

0

자바 스크립트는이

VAR을하는 가장 좋은 방법은 =의 window.open (이 비트 remeber 캔트를) 승리 (창 크기 포함); win.resizeTo (w, h); win.focus();

0
var user_window=window.open('http://www.someplace.com','someplace_window_name','toolbar=no,directories=no,location=no,status=yes,menubar=no,resizable=yes,scrollbars=yes,width=1024,height=768'); 
user_window.focus(); 

가 사용자의 클릭이를 시작해야한다, 또는이 될 것입니다 대부분의 팝업 차단기가 차단합니다. IE6 +, FF, Opera, Safari를 포함하여 지원해야하는 모든 브라우저에서 작동합니다.

포커스 비트는 새 창을 앞쪽으로 가져옵니다.

팝업창 대신 jquery 용 Dialog 플러그인을 제안합니다.
그게 내 팝업 창의 90 %를 대체 한 것입니다.
귀하의 팝업이 popover (원래 창 내에서 묶여 있음)가됩니다. 그리고 이것은 제가 알 수있는 한 팝업 차단기에 의해 차단되지 않습니다. Dialog 플러그인은 dragable popovers, 외양과 사라지는 효과, 그리고 많은 멋진 것들을 허용합니다.

관련 문제