이 페이지를 종료 하시겠습니까? 를 비활성화하는 방법 이 있습니까? 웹 사이트에 메시지? Chrome을 사용하고 있습니다.
이 페이지를 종료 하시겠습니까? 를 비활성화하는 방법 이 있습니까? 웹 사이트에 메시지? Chrome을 사용하고 있습니다.
답변:
이러한 메시지는 웹 사이트 개발자가 onunload
또는 onbeforeunload
이벤트를 수신하여 구현 합니다.
about.com 에서 해당 이벤트를 차단 하는 사용자 스크립트가 있습니다 .
이 사용자 스크립트 (또는 다른 사용자 스크립트)를 설치하려면 먼저 TamperMonkey라는 Chrome 확장 프로그램을 설치해야합니다 .
사용자 스크립트를 설치할 때 원하지 않는 일을 할 수 있으므로주의하십시오. 신뢰할 수있는 출처의 사용자 스크립트 만 설치하십시오.
jQuery 사용
$(window).off('beforeunload'); // tested in IE 11 and Chrome 62
로부터 의 jQuery 문서
인수없이 .off ()를 호출하면 요소에 연결된 모든 핸들러가 제거됩니다. 이벤트 이름, 네임 스페이스, 선택기 또는 핸들러 함수 이름의 조합을 제공하여 요소에서 특정 이벤트 핸들러를 제거 할 수 있습니다.
요약하자면 $(window)
jQuery 객체로 싸인 window 객체에 대한 참조를 제공합니다. 이 래퍼를 사용하면 객체에서 사용할 수있는 jQuery API에 액세스 할 수 있습니다 (예 :) .off
. .off()
문자열을 호출 하고 제공하면 beforeunload
이전에 이벤트를 수신 한 이벤트 리스너가 제거됩니다 beforeunload
.
참고 : Google에서 빠른 연구를 한 후에 찾은 바닐라 JS 접근법을 가지고 놀았습니다. 그러나이 문제를 해결해야하는 할당 된 시간에 이러한 방법을 사용할 수 없었습니다. 누군가가 여전히 브라우저와 호환되는 jQuery가 아닌 메소드를 가지고 있다면 추가 답변을 주석하거나 게시하십시오. :)
@wickdninja의 명령이 작동하도록하려면 먼저 Chrome 개발자 도구를 설치하십시오. 그런 다음 열면 '콘솔'탭이 나타납니다. 콘솔 탭을 클릭하십시오. 그런 다음 jQuery를 사용하려면 다음 명령을 입력하십시오.
var jqry = document.createElement('script');
jqry.src = "https://code.jquery.com/jquery-3.3.1.min.js";
document.getElementsByTagName('head')[0].appendChild(jqry);
jQuery.noConflict();
그런 다음 다음을 입력하십시오.
$(window).off('beforeunload');
그 후에 나는 'Leave?'를 얻지 않고 내 Gmail을 열거 나 닫을 수 있습니다. 신속한. https://developers.google.com/web/tools/chrome-devtools/console/javascript
도움이 되었기를 바랍니다.
사이트별로 Javascript를 비활성화 할 수 있습니다. 설정-> 고급 설정 표시-> 개인 정보-> 컨텐츠 설정-> Javascript-> 예외 관리로 이동하십시오.