Tôi đang cố gắng theo dõi trạng thái cửa sổ Firefox ("tối đa", "thu nhỏ", "bình thường", "toàn màn hình"; xem here). Tuy nhiên, bất cứ điều gì tôi đã cố gắng, tôi không bao giờ được nhìn thấy sự kiện thu nhỏ; những người khác làm tốt. Ví dụ: nếu tôi thêm người nghe vào cửa sổ nhưTiện ích mở rộng của Firefox: kiểm tra xem cửa sổ có bị thu nhỏ
window.addEventListener("activate", function(event) { dump("activate " + window.windowState + " " + window.screenX + " " + window.screenY + "\n"); }, false);
window.addEventListener("deactivate", function(event) { dump("deactivate " + window.windowState + " " + window.screenX + " " + window.screenY + "\n"); }, false);
window.addEventListener("resize", function(event) { dump("resize " + window.windowState + " " + window.screenX + " " + window.screenY + "\n"); }, false);
Tôi chưa bao giờ thấy 2 là window.windowState (2 = STATE_MINIMIZED). Tôi đã thử một workaround sử dụng screenX và screenY, nhưng điều đó không giúp đỡ. Khi tôi thu nhỏ cửa sổ hủy kích hoạt - không phải thay đổi kích thước - sự kiện xảy ra với window.windowState là 3 (STATE_NORMAL) và các giá trị screenX/screenY cũ.
Có cách nào để phát hiện khi cửa sổ Firefox đang được thu nhỏ không? Tôi đã tới giới hạn của mình rồi. Cảm ơn rất nhiều vì đã giúp đỡ!
Tôi tìm thấy giải pháp thay thế bằng bộ hẹn giờ định kỳ kiểm tra trạng thái cửa sổ hiện tại và sau đó báo cáo mọi thay đổi. Nó hoạt động, nhưng tôi vẫn không hiểu vấn đề với giải pháp nghe. – Christian