#window.open, window.close , window.resizeTo
1) window.open은
새창으로 열기 위하여 사용하는것 이라는 것은 누구나 안다.
var 새창이름 = window.open(url, name, specs, replace);
여기서 주목할 것 name이다.
name부분에 _blank이렇게 적었던 것을 기억한다.
이번에 알게 된것은 바로
name에 임의의 이름을 붙여주었을때 일어나는 일이다.
가령 어떤 버튼을 눌러서 이름이 붙은 새창을 연다고 생각해보자.
이럴경우 버튼을 계속 눌러도 이미 이름이 붙은 새창에서 계속 리로드 될것이다.
이렇게 하면 새창을 무한으로 띄우지 않는다.
https://offbyone.tistory.com/312
2) window.close
말그대로 닫는 기능이다.
간과하지 말아야할것은 window.close는 window.open으로 열린 새창만 닫을수 있다.
그렇지 않은 곳에서는 아무리 window.close를 써도 닫히지 않을것이다.
* sunny가 사용한곳
if (window.opener) {
// window.opener를 이용하여 새창에서 자신을 오픈한 부모창을 제어할 수 있다.
window.close();
} else {
this.$router.push('어떤주소').catch(() => {});
}
위의 기능은 새창으로 열었다면 닫아버리구 그것이 아니라면 어떤주소로 이동하기 위해서 만든 함수이다.
++++ window.name 을 사용하면 새창으로 열린 자식창이 자신의 이름을 알 수 있다.
3) window.resizeTo
window.resizeTo(width, height)
- window.open으로 만들어진 창이나 탭인경우에만 창크기 조절이 가능하다. - 단 2개이상탭을가진 창일경우에는 불가능하다.
예) 사용한곳은 small <-> full
이렇게 사이즈를 지정할 때 사용하였다.
전체 창은 할수없다, 크롬에서 먹지않기 때문에!
'error & basic' 카테고리의 다른 글
UserAgent #2307 (0) | 2023.07.05 |
---|---|
v-if vs v-show #2307 (0) | 2023.07.04 |
vue 생명주기 #2306 (0) | 2023.07.03 |
computed #2306 (0) | 2023.06.29 |
vue 리다이렉션 #2306 (0) | 2023.06.28 |