Trigger center/middle mouse để download file
TIL
748
Javascript
312
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.
217 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
77 12
(Ả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 3 năm trước
77 12
White
76 10
(Ả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 gần 2 năm trước
76 10
White
38 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 3 năm trước
38 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 2 năm trước
0 4
White
3 0
I used Spring boot, Hibernate few times back then at University, I'v started using it again recently. In this (Link), I want to check how Spring J...
Rey viết hơn 1 năm trước
3 0
{{like_count}}

kipalog

{{ comment_count }}

bình luận

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


White
{{userFollowed ? 'Following' : 'Follow'}}
19 bài viết.
217 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á!