Trigger center/middle mouse để download file
TIL
720
Javascript
297
White

Dinh Duong viết ngày 17/05/2018

Trigger center/middle mouse để download fileYour TIL title

Chúng ta đã biết các file như hình ảnh .png .jpg... hoặc .pdf... thì browser sẽ tự động preview cho chúng ta, không nhưng các file khác là khi mởi new tab nó sẽ tự động download về như .xlms .doc .docs.

Vậy thì làm sao để download?

Browser có 1 chức năng là khi chúng ta nhấp center/middle mouse thì nó sẽ down file đó về chứ không priview file đó => Việc của chúng ta là giả lập lại thao tác mouse chân giữa.

Code

var url = 'your-file-url'
var link = document.createElement('a')
link.href = sUrl
link.setAttribute('target','_blank')
// Set filename khi download xuống
if (link.download !== undefined) {
    var fileName = sUrl.substring(sUrl.lastIndexOf('/') + 1, sUrl.length);
    link.download = fileName;
}
// Dispatch cái evetn middle mouse click
if (document.createEvent) {
    // left mouse: 0, middle: 1, right: 2
    var e = new MouseEvent( "click", { "button": 1, "which": 1 });
    link.dispatchEvent(e);
    return true;
}

jinhduong 17-05-2018

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

Dinh Duong

19 bài viết.
205 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
72 11
(Ảnh) Với xu hướng lập trình mà business và phần lớn xử lý đều nằm ở tầng phía frontend với gánh nặng càng ngày càng đè lên vai chàng dũng sĩ javas...
Dinh Duong viết hơn 2 năm trước
72 11
White
71 9
(Ảnh) Cách tốt nhất để học bất cứ thứ gì là chúng ta dự định làm ra cái gì linh tinh để rồi trong quá trình làm ra sản phẩm chúng ta nhận ra những...
Dinh Duong viết 11 tháng trước
71 9
White
37 6
(Ảnh) 1.Hoàn cảnh Bạn đã bao giờ tự hỏi tại sao setTimeout(()={console.log(123)}, 0); được nhiều library sử dụng đến như thế? Nó là 1 kỹ thuật h...
Dinh Duong viết hơn 2 năm trước
37 6
Bài viết liên quan
White
0 4
fCC: Technical Documentation Page note So I have finished the HTML part of this exercise and I want to come here to lament about the lengthy HTML ...
HungHayHo viết 1 năm trước
0 4
White
59 8
Tăng sức mạnh cho javascript với lodash Lần này mình sẽ giới thiệu 1 thư viện javascript vô cùng bá đạo có tên là "lodash]1]", có thể nói nó là LI...
Huy Hoàng Phạm viết gần 4 năm trước
59 8
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
19 bài viết.
205 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!