새 창이 아닌 새 탭에서 링크를 열려면 어떻게해야합니까?
이 질문에 이미 답변이 있습니다.
새 탭에서 열어야하는 링크를 '계산'하는 '열기'버튼이 있습니다. 나는 사용하려고 :
window.open(url, '_blank');
그러나 그것은 새로운 창을 엽니 다.
또한 다음 방법을 시도했습니다.
<form id="oform" name="oform" action="" method="post" target="_blank">
</form>
...
document.getElementById("oform").action = url;
document.getElementById("oform").submit();
그래도 새 탭 대신 새 창이 열립니다.
Simple <a href...>
with target='blank'
를 사용하면 링크가 새 탭에서 열립니다.
해결책이 있습니까?
업데이트 [ 2019 ] 오늘날 대부분의 브라우저는 대상을로 설정하면 새 탭에서 열립니다 _blank
. 팝업창의 시대는 지났습니다. 이제 다음을 사용할 수 있습니다.
<a href="some url" target="_blank">content of the anchor</a>
대부분의 정상적인 브라우저는 새 탭에서 새 창을 엽니 다.
CSS3는 target-new 속성으로 "새 탭에서 열기"를 지원합니다.
target-new: window | tab | none;
업데이트 [ 2016 ] : 댓글 중 하나에서 알 수 있듯이이 메서드는 CSS3 사양에 포함되지 않았습니다. 이것은 사용해서는 안됩니다. 그러나 대부분의 최신 브라우저 target='_blank'
는 즉시 새 탭의 크기를 조정하지 않는 한 새 탭에서 링크를 여는 것을 볼 수 있습니다 . 그러나 사양에서이 동작을 강제하는 메커니즘은없는 것 같습니다.
[ 2011 ] 잘 지원되는 새 탭을 강제로 열려면 다음을 시도하십시오.
<a href="some url" target="_newtab">content of the anchor</a>
그렇지 않으면 팝업 차단기가 팝업을 죽이지 않도록 이 방법을 사용 하여 창 크기를 즉시 조정하십시오.
언급 한 CSS3 target-new 옵션 인 @ anirudh4444 외에는 할 수 없으며 대부분 중요한 것은 그렇게해서는 안됩니다. 사용자에게 맡겨야하는 사용자 경험을 제어하려고합니다.
다음 중 하나를 사용할 수 있으며 6 개의 다른 브라우저에서 모두 테스트했습니다. (Google Chrome, Mozilla Firefox, Microsoft Internet Explorer, Opera, K-meleon * 및 Seamonkey.)
<a href="blaah" target="_blank">Blaah</a>
<a href="blaah" target="_tab">Blaah</a>
<a href="blaah" target="_new">Blaah</a>
모두 똑같이 작동하며 선택은 전적으로 선호도에 달려 있습니다.
* K-meleon, 어떤 이유로 링크를 클릭했을 때 내가 있던 페이지를 방금 열었습니다.
"form"요소를 사용하여이 문제를 해결할 수있었습니다.
function openNewTab(link) {
var frm = $('<form method="get" action="' + link + '" target="_blank"></form>')
$("body").append(frm);
frm.submit().remove();
}
전체 구현 및 세부 정보는 내 게시물 http://mukesh.in/force-open-new-tab-in-browsers-instead-of-windows/를 방문하십시오 .
또는이 JSFiddle을 참조하십시오.
양식에는 target = "_ blank"(선행 밑줄 포함)가 있고 단순 링크에는 선행 밑줄없이 target = 'blank'가 있습니다. "_blank"는 특정 작업을 지정하는 예약어이지만 "blank"는 특정 (새로 만들 수있는) 창의 이름입니다. 그것이 당신이 다른 결과를 얻는 이유입니다. 둘 다 팝업이지만 유형이 다릅니다.
각 사용자는 팝업이 새 창을 열 것인지 새 탭을 열 것인지에 대한 궁극적 인 제어 권한을 갖습니다. 그것에 대해 할 수있는 일은 없습니다.
다음은 Chrome에서 작동합니다.
<script>
function buildAndGo() {
var aEl = document.getElementById('missingLink');
aEl.href = "#" + resultOfSomeCalculation();
var e = document.createEvent('MouseEvents');
e.initEvent( 'click', true, true );
aEl.dispatchEvent(e);
}
</script>
...
<button onclick="buildAndGo()">Do it</button>
<a href="#" id="missingLink" target="_blank" style="visibility: hidden;"></a>
다음 소스에서 작업하여 IE 버전 작동을 시도하고 얻으십시오 : Selenium BrowserBot , YUI User Action
링크의 경우 대상 태그 만 사용 하면 작동합니다.
But In case of a button try doing this with the onclick function instead of using just _blank
Use the window.open(url, target) function instead - it takes a URL, and a target window name, which behaves the same as the target="something" attribute on a link....like this
button(type="button", onclick="window.open('auth/google', '_blank');")
This should work.
참고URL : https://stackoverflow.com/questions/6296013/how-can-i-open-a-link-in-new-tab-and-not-new-window
'Program Tip' 카테고리의 다른 글
자바 스크립트에서 전역 var와 window.variable의 차이점은 무엇입니까? (0) | 2020.10.27 |
---|---|
MongoKit vs MongoEngine vs Flask-MongoAlchemy for Flask (0) | 2020.10.27 |
Haskell의 Data.Typeable은 무엇입니까? (0) | 2020.10.27 |
Jenkins 편안한 API 참조는 어디에서 찾을 수 있습니까? (0) | 2020.10.27 |
+ = new EventHandler (Method) vs + = Method (0) | 2020.10.27 |