2013-12-15 5 views
8

मैं नीचे दिए गए उदाहरण कोड का उपयोग कर पेज के स्क्रीनशॉट लेने के लिए सक्षम हूँ:स्क्रीनशॉट लेने से पहले कुछ तत्वों को कैसे हटाएं?

html2canvas(document.body, { 
    onrendered: function(canvas) { 
    document.body.appendChild(canvas); 
    } 
}); 

अब वहाँ कुछ div के मुझे नहीं पेज के हिस्सा बनना चाहते हैं जब मैं स्क्रीनशॉट लेने के कर रहे हैं? मैं उन्हें स्क्रीनशॉट का हिस्सा होने से कैसे रोक सकता हूं।

एक तरीका मैंने सोचा था कि तत्व को क्लोन करना था और फिर तत्वों को हटा देना था, लेकिन क्लोन का एक स्क्रीनशॉट लेना एक सफेद स्क्रीन देता है। यहाँ कोड मैं प्रयोग किया जाता है:

html2canvas($(document.body).clone()[0], { 
    onrendered: function(canvas) { 
    document.body.appendChild(canvas); 
    } 
}); 

उत्तर

22

इस विशेषता जोड़ें: जब स्क्रीनशॉट संसाधित किया जाता है किसी भी तत्व को आप नहीं चाहते करने के लिए data-html2canvas-ignore लिया जाएगा।

उम्मीद है कि यह अगले व्यक्ति की मदद करेगा।

+0

या आप html2canvas फ़ंक्शन को कॉल करने से पहले उन div को jquer/जावास्क्रिप्ट का उपयोग करके छुपा सकते हैं, फिर उस फ़ंक्शन के बीच दिखाएं। –

+0

paa g यह स्क्रॉल वाले पृष्ठों के लिए काम कर रहा है? मैं इसे करने की कोशिश कर रहा हूं क्योंकि मेरे पास div है जिसमें कैनवास में कनवर्ट किया जाना है, इसमें स्क्रॉल है लेकिन यह केवल उन तत्वों को परिवर्तित कर रहा है जो स्क्रीन पर दिखाई देने वाले दूसरे शब्दों में स्क्रीन पर दिखाई दे रहे हैं .... क्या कोई तरीका है पूरे पेज स्क्रीन शॉट ??? –

+0

मुझे पूरा पृष्ठ मिल रहा है, न केवल दृश्य क्षेत्र। – user566245

संबंधित मुद्दे