मैं सिर्फ यह "सरल" समस्या पर 45 मिनट खर्च, यह जिस तरह से मैं प्राप्त करने की कोशिश इसे संचालित करना चाहता था।
मेरे पास एक आईएमजी टैग के अंदर एक छवि थी, जो jQuery Barcode
प्लगइन द्वारा गतिशील रूप से जेनरेट की गई थी जिसे मुझे प्रिंट करना था। मैं चाहता था कि यह दूसरी विंडो में प्रिंट करे और बाद में विंडो बंद करें। यह jQuery-UI
डायलॉग के अंदर jQuery-UI
डायलॉग विस्तारक के साथ jQuery Grid
प्लगइन के अंदर एक बटन पर क्लिक करने के बाद हुआ था।
मैंने अंततः सभी उत्तरों को समायोजित किया जब तक कि मैं अंततः इसके साथ नहीं आया, शायद यह किसी की मदद कर सकता है।
w = window.open(document.getElementById("UB-canvas").src);
w.onload = function() { w.print(); }
w.onbeforeunload = setTimeout(function() { w.close(); },500);
w.onafterprint = setTimeout(function() { w.close(); },500);
setTimeout
यह एक ही रास्ता मैं Firefox 42
पाए जाने वाले कार्यों पर मारते थे है, न सिर्फ shits और गिगल्स के लिए है। यह केवल .close()
फ़ंक्शंस को तब तक छोड़ देगा जब तक कि मैंने इसे ब्रेकपॉइंट नहीं जोड़ा, फिर यह पूरी तरह से काम करता था। तो मुझे लगता है कि यह उन विंडो उदाहरणों को बनाया गया है इससे पहले कि यह ऑनबॉर्लोड लोड फ़ंक्शन और उसके बाद के ईवेंट फ़ंक्शंस या कुछ लागू कर सके।
कूल। लेकिन क्या होगा यदि मैं एक अलग छवि दिखाना चाहता हूं जो पॉपअप विंडो शुरू करता है? – andrew
मुद्रण के लिए सीएसएस शैलियों की जांच करें। आप मूल रूप से स्क्रीन दृश्य पर छिपी हुई एक छवि कर सकते हैं, और उसके बाद प्रिंट दृश्य के लिए दृश्यमान हो सकते हैं। –