(फ़ायरफ़ॉक्स एडऑन साइट की जांच) मैं जानता हूँ कि इस सवाल का 2 वर्ष है, लेकिन उम्मीद है कि लोगों को इस अपडेट देखेंगे।
आप उपयोगकर्ता पूछ एक करने के लिए बिना, एक बेस 64 स्ट्रिंग में एक छवि को बचाने के लिए (और यह भी फ़ाइल नाम सेट) उपयोगकर्ता का संकेत दे सकता सही क्लिक
var download = document.createElement('a');
download.href = dataURI;
download.download = filename;
download.click();
उदाहरण:
var download = document.createElement('a');
download.href = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==';
download.download = 'reddot.png';
download.click();
फ़ायरफ़ॉक्स का उपयोग करके एक क्लिक ईवेंट ट्रिगर करने के लिए, आपको this SO answer में जो समझाया गया है उसे करने की आवश्यकता है। मूल रूप से:
function fireEvent(obj,evt){
var fireOnThis = obj;
if(document.createEvent) {
var evObj = document.createEvent('MouseEvents');
evObj.initEvent(evt, true, false);
fireOnThis.dispatchEvent(evObj);
} else if(document.createEventObject) {
var evObj = document.createEventObject();
fireOnThis.fireEvent('on' + evt, evObj);
}
}
fireEvent(download, 'click')
20/03/2013 के अनुसार, केवल ब्राउज़र कि पूरी तरह से download
विशेषता का समर्थन करता है क्रोम है। Check the compatibility table here
आपके उत्तर के लिए धन्यवाद। यह वास्तव में उपयोगी है – hotips
क्रोम में पूरी तरह से काम किया, लेकिन Google क्रोम फ्रेम के साथ चल रहे IE8 में कुछ भी नहीं किया। –
यदि आप jQuery का उपयोग कर रहे हैं, तो '$ (डाउनलोड) का उपयोग करें। क्लिक करें()'। यदि आप jQuery का उपयोग नहीं कर रहे हैं, तो [यह अन्य SO प्रश्न] देखें (http://stackoverflow.com/a/827793/756000) – davoclavo