window. open () 팝 업 창 차단
1334 단어 window.open
여러 가지 이유 로 팝 업 창 을 탐색 하 는 데 여러 가지 제한 을 두 었 습 니 다.제한 이 다 르 면 브 라 우 저 팝 업 창의 차 이 를 초래 할 수 있 습 니 다.
대부분의 브 라 우 저 는 자 바스 크 립 트 가 팝 업 하 는 창 (blocked) 을 막 고 사용자 의 허락 을 받 으 면 해당 팝 업 창 을 엽 니 다.
현재 문 제 는 사용자 가 단 추 를 누 르 면 관련 ajax 요청 을 하 는 것 입 니 다. 응답 시간 이 너무 길 기 때문에 데이터 가 돌 아 왔 을 때 브 라 우 저 는 사용자 가 주도 하 는 작업 시간 범주 에 있다 고 생각 하지 않 고 Blocked 는 팝 업 창 을 떨 어 뜨 립 니 다.
해결 방법: window. open 방법 은 새 창 을 가리 키 는 인용 을 되 돌려 주기 때 문 입 니 다.이 인용 을 통 해 새로 열 린 창 을 조작 할 수 있 습 니 다.따라서 사용자 가 btn 을 클릭 할 때 첫 번 째 로 창 을 팝 업 하여 팝 업 창의 인용 을 가 져 옵 니 다.그리고 ajax 데이터 요청 을 진행 합 니 다. 데이터 가 돌아 올 때 창 url 주 소 를 설정 하 십시오: new Window. location = url;1) call window.open just before calling $.ajax and save window reference:var newWindow = window.open("loading.html");//loading. html 의 과도 페이지 2) on callback set location property of the saved window reference: new Window. location = url 을 추가 해 야 할 수도 있 습 니 다.
물론 문제 가 있 습 니 다. ajax 가 요청 한 데이터 가 잘못 되 었 을 때 새 팝 업 창 에서 최신 데 이 터 를 가 져 오지 못 해 오류 가 발생 했 습 니 다.
해결 방법 은 요청 이 완료 되 고 오류 가 발생 했 을 때 new Window 를 오류 페이지 로 이동 시 키 는 것 입 니 다.
또는 loading. html 페이지 에서 스스로 타 이 머 를 만 들 거나 30 분 안에 urlchange 가 없 으 면 스스로 잘못 뛰 습 니 다.
그래도 안 되면 경고 만 할 수 있 습 니 다 ('팝 업 차단 기 를 사용 하도록 설정 되 어 있 습 니 다. company. com 용 팝 업 을 허용 하 십시오').
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
window.open POST 방식으로 요청텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.