2012-05-26 8 views
5

मैं फ़ायरफ़ॉक्स विंडो ("अधिकतम", "न्यूनतम", "सामान्य", "पूर्णस्क्रीन" की स्थिति का ट्रैक रखने की कोशिश कर रहा हूं; here देखें)। हालांकि, मैंने जो भी कोशिश की है, मुझे कभी भी कम से कम घटना नहीं मिलती है; दूसरों को ठीक कर रहे हैं। उदाहरण के लिए, अगर मैं इस तरह केफ़ायरफ़ॉक्स एक्सटेंशन: जांचें कि विंडो को कम किया गया है

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

के रूप में खिड़की के श्रोताओं को जोड़ने मैं window.windowState (2 = STATE_MINIMIZED) के रूप में 2 कभी नहीं। मैंने स्क्रीनएक्स और स्क्रीनवाई का उपयोग करके एक वर्कअराउंड की कोशिश की है, लेकिन इससे मदद नहीं मिलती है। जब मैं खिड़की को निष्क्रिय कर देता हूं - आकार बदलता है - घटना खिड़की के साथ आग लगती है। विन्डोस्टेट 3 (STATE_NORMAL) और पुराना स्क्रीनएक्स/स्क्रीनवाई मान होता है।

क्या फ़ायरफ़ॉक्स विंडो को कम करने के दौरान पता लगाने का कोई तरीका है? मेरा विवेक खत्म हो रहा है। मदद के लिए बहुत - बहुत शुक्रिया!

+0

मुझे एक टाइमर का उपयोग करके एक समाधान मिला जो समय-समय पर वर्तमान विंडो स्थिति की जांच करता है, और फिर किसी भी बदलाव की रिपोर्ट करता है। यह काम कर रहा है, लेकिन मुझे अभी भी समझ में नहीं आता श्रोता समाधान के साथ क्या समस्या है। – Christian

उत्तर

5

आपको sizemodechange ईवेंट सुनना चाहिए। खिड़की को कम या अधिकतम करने के बाद यह घटना फायरिंग है। resize घटना खिड़की न्यूनीकरण के लिए आग नहीं है क्योंकि तकनीकी रूप से खिड़की का आकार बदल नहीं है - यह छिपा हुआ है। और deactivate घटना से पहले से पहले आग को कम कर देता है, जब विंडो में अभी भी सामान्य स्थिति होती है (हालांकि मैंने जांच नहीं की थी)।

+0

बहुत बढ़िया! मैं उस घटना को पूरी तरह से याद किया। आपका बहुत बहुत धन्यवाद! – Christian