Làm cách nào tôi có thể tắt Vô hiệu hóa Bạn có chắc chắn muốn rời khỏi trang này Cửa sổ bật lên trong Chrome không?


22

Có cách nào để vô hiệu hóa Bạn có chắc chắn muốn rời khỏi trang này không? tin nhắn trên một trang web? Tôi đang sử dụng Chrome.

Câu trả lời:


8

Những thông điệp được thực hiện bởi các nhà phát triển trang web bằng cách lắng nghe onunloadhoặc onbeforeunloadcác sự kiện.

Có một bản mô tả có sẵn từ about.com chặn các sự kiện đó.

Để cài đặt bản mô tả này (hoặc các bản mô tả người dùng khác, vì mục đích đó), trước tiên bạn cần cài đặt tiện ích mở rộng Chrome có tên TamperMonkey .

Hãy cẩn thận khi cài đặt usercripts, chúng có khả năng làm những việc bạn có thể không muốn. Chỉ cài đặt usercripts từ các nguồn đáng tin cậy.


nó không còn hữu ích nữa ..
pjpj

giải pháp này không hiệu quả
Argus

3
$(window).off('beforeunload.windowReload');

Điều này được làm việc cho tôi.


4
Chi tiết hơn một chút về giải pháp được đề xuất của bạn sẽ giúp ích
Dave M

1

Sử dụng jQuery

$(window).off('beforeunload'); // tested in IE 11 and Chrome 62

Từ các tài liệu jQuery

Gọi .off () không có đối số sẽ loại bỏ tất cả các trình xử lý được gắn vào các phần tử. Trình xử lý sự kiện cụ thể có thể được loại bỏ trên các phần tử bằng cách cung cấp kết hợp tên sự kiện, không gian tên, bộ chọn hoặc tên hàm xử lý.

Vì vậy, trong bản tóm tắt, $(window)cung cấp cho chúng ta một tham chiếu đến đối tượng cửa sổ được bọc trong một đối tượng jQuery. Trình bao bọc này cung cấp cho chúng tôi quyền truy cập vào các API jQuery có sẵn trên đối tượng (chẳng hạn như .off). Gọi .off()và cung cấp chuỗi beforeunloadsẽ loại bỏ bất kỳ trình lắng nghe sự kiện nào trước đây đã nghe beforeunloadsự kiện.

Lưu ý: Tôi đã chơi với các cách tiếp cận JS vanilla mà tôi tìm thấy sau một số nghiên cứu nhanh về Google. Tuy nhiên, tôi không thể làm cho các phương pháp này hoạt động trong thời gian quy định mà tôi phải giải quyết vấn đề này. Nếu ai đó có một phương thức không phải là jQuery vẫn tương thích với trình duyệt, vui lòng bình luận hoặc đăng câu trả lời bổ sung. :)


Tôi đã không thành công khi sử dụng câu trả lời được chấp nhận và jQuery đã có sẵn trên trang.
wickdninja

2
Đây sẽ là một câu trả lời tốt hơn nếu bạn giải thích cách sử dụng nó, và, lý tưởng nhất, một cái gì đó về cách thức hoạt động của nó.
Scott

0

vì vậy, để lệnh từ @wickdninja hoạt động, trước tiên hãy cài đặt Công cụ dành cho nhà phát triển Chrome. Sau đó, bạn có thể mở nó và bạn sẽ thấy một tab cho 'Bảng điều khiển'. Nhấp vào tab Bảng điều khiển. Sau đó, để kích hoạt jQuery gõ các lệnh này:

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();

Sau đó gõ:

$(window).off('beforeunload');

sau đó tôi có thể mở / đóng gmail của mình mà không nhận được 'Rời khỏi?' lời nhắc. https://developers.google.com/web/tools/chrom-devtools/console/javascript

hi vọng điêu nay co ich.


-4

Bạn có thể tắt Javascript trên cơ sở từng trang web. Chuyển đến Cài đặt -> Hiển thị cài đặt nâng cao -> Quyền riêng tư -> Cài đặt nội dung -> Javascript -> Quản lý ngoại lệ.


4
Có, nhưng điều đó sẽ vô hiệu hóa nhiều hơn chỉ là tin nhắn.
BenjiWiebe

Ít nhất trong FIrefox, việc không cho phép facebook chạy javascript thậm chí không hoàn thành những gì OP dự định vì trang chỉ đơn giản là tải lại tập lệnh mà không thực thi nó.
brokkr 30/03/2015
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.