Skip to content

Commit 6356c3f

Browse files
committed
Set target="_blank" on save link
Also normalize setImmediate usage Fixes #408
1 parent 24f9aac commit 6356c3f

1 file changed

Lines changed: 9 additions & 5 deletions

File tree

src/FileSaver.js

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/* FileSaver.js
22
* A saveAs() FileSaver implementation.
3-
* 1.3.5
4-
* 2018-01-22 15:49:54
3+
* 1.3.6
4+
* 2018-03-16 14:39:40
55
*
66
* By Eli Grey, https://eligrey.com
77
* License: MIT
@@ -33,8 +33,9 @@ export default var saveAs = saveAs || (function(view) {
3333
}
3434
, is_safari = /constructor/i.test(view.HTMLElement) || view.safari
3535
, is_chrome_ios =/CriOS\/[\d]+/.test(navigator.userAgent)
36+
, setImmediate = view.setImmediate || view.setTimeout
3637
, throw_outside = function(ex) {
37-
(view.setImmediate || view.setTimeout)(function() {
38+
setImmediate(function() {
3839
throw ex;
3940
}, 0);
4041
}
@@ -125,14 +126,14 @@ export default var saveAs = saveAs || (function(view) {
125126

126127
if (can_use_save_link) {
127128
object_url = get_URL().createObjectURL(blob);
128-
setTimeout(function() {
129+
setImmediate(function() {
129130
save_link.href = object_url;
130131
save_link.download = name;
131132
click(save_link);
132133
dispatch_all();
133134
revoke(object_url);
134135
filesaver.readyState = filesaver.DONE;
135-
});
136+
}, 0);
136137
return;
137138
}
138139

@@ -143,6 +144,7 @@ export default var saveAs = saveAs || (function(view) {
143144
return new FileSaver(blob, name || blob.name || "download", no_auto_bom);
144145
}
145146
;
147+
146148
// IE 10+ (native saveAs)
147149
if (typeof navigator !== "undefined" && navigator.msSaveOrOpenBlob) {
148150
return function(blob, name, no_auto_bom) {
@@ -155,6 +157,8 @@ export default var saveAs = saveAs || (function(view) {
155157
};
156158
}
157159

160+
save_link.target = "_blank";
161+
158162
FS_proto.abort = function(){};
159163
FS_proto.readyState = FS_proto.INIT = 0;
160164
FS_proto.WRITING = 1;

0 commit comments

Comments
 (0)