This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.

The download() method of the HTMLIFrameElement interface downloads a specified URL, storing it at /sdcard/download.


var instanceOfDOMRequest =, options);


A DOMRequest for handling the download request. Its request.onsuccess handler handles the success case, and its request.onerror handler handles the failure case.


The URL of the file to be downloaded.
options Optional
An options object allowing optional settings to be specified for the download. The available options are:
  • filename: The filename to save the downloaded file as. If this is not specified, the filename used will be the original filename, as specified in the url.
  • referrer: Specifies a referrer for the downloaded file. If this is not specified there will be no referrer.


var browser = document.querySelector('iframe');

var request =, { filename: 'foo.bin' });

request.onsuccess = function() {
  console.log("File downladed");

request.onerror = function() {
  console.log("Download error");


Not part of any specification.

Browser compatibility

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support No support 47 (47)[1] No support No support No support
Feature Android Android Webview Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile Chrome for Android
Basic support No support No support No support No support No support No support No support

[1] Supported in chrome code only.

See also

Document Tags and Contributors

 Contributors to this page: chrisdavidmills, wbamberg
 Last updated by: chrisdavidmills,