blueimp/jQuery-File-Upload là dự án mã nguồn mở trên GitHub với 30.7k sao, viết chủ yếu bằng PHP. File Upload widget with multiple file selection, drag&drop support, progress bar, validation and preview images, audio and video for jQuery. Supports cross-domain, chunked and resumable file uploads. Works with any server-side platform (Google App Engine, PHP, Python, Ruby on Rails, Java, etc.) that supports standard HTML form file uploads.
Tóm tắt dựng từ metadata GitHub của chính dự án — chưa có bài review TopGit. Trang sẽ tự động cập nhật khi bài review đầy đủ được xuất bản.
VÌ SAO CHƯA CÓ REVIEW
TopGit viết bài đầy đủ cho repo có nhiều sao nhất và được yêu cầu nhiều nhất. Trang này là snapshot trong thời gian chờ — xem README gốc ở tab READ ME.
File Upload widget with multiple file selection, drag&drop support, progress
bars, validation and preview images, audio and video for jQuery.
Supports cross-domain, chunked and resumable file uploads and client-side
image resizing.
Works with any server-side platform (PHP, Python, Ruby on Rails, Java,
Node.js, Go etc.) that supports standard HTML form file uploads.
Demo
Demo File Upload
Features
Multiple file upload:
Allows to select multiple files at once and upload them simultaneously.
Drag & Drop support:
Allows to upload files by dragging them from your desktop or file manager and
dropping them on your browser window.
Upload progress bar:
Shows a progress bar indicating the upload progress for individual files and
for all uploads combined.
Cancelable uploads:
Individual file uploads can be canceled to stop the upload progress.
Resumable uploads:
Aborted uploads can be resumed with browsers supporting the Blob API.
Chunked uploads:
Large files can be uploaded in smaller chunks with browsers supporting the
Blob API.
Client-side image resizing:
Images can be automatically resized on client-side with browsers supporting
the required JS APIs.
Preview images, audio and video:
A preview of image, audio and video files can be displayed before uploading
with browsers supporting the required APIs.
No browser plugins (e.g. Adobe Flash) required:
The implementation is based on open standards like HTML5 and JavaScript and
requires no additional browser plugins.
Graceful fallback for legacy browsers:
Uploads files via XMLHttpRequests if supported and uses iframes as fallback
for legacy browsers.
HTML file upload form fallback:
Allows progressive enhancement by using a standard HTML file upload form as
widget element.
Cross-site file uploads:
Supports uploading files to a different domain with cross-site XMLHttpRequests
or iframe redirects.
Multiple plugin instances:
Allows to use multiple plugin instances on the same webpage.
Customizable and extensible:
Provides an API to set individual options and define callback methods for
various upload events.
Multipart and file contents stream uploads:
Files can be uploaded as standard "multipart/form-data" or file contents
stream (HTTP PUT file upload).
Compatible with any server-side application platform:
Works with any server-side platform (PHP, Python, Ruby on Rails, Java,
Node.js, Go etc.) that supports standard HTML form file uploads.
Security
⚠️ Please read the VULNERABILITIES document for a list of
fixed vulnerabilities
Please also read the SECURITY document for instructions on how to
securely configure your Web server for file uploads.
Setup
jQuery File Upload can be installed via NPM:
npm install blueimp-file-upload
This allows you to include jquery.fileupload.js and
its extensions via node_modules, e.g:
The widget can then be initialized on a file upload form the following way:
$('#fileupload').fileupload();
For further information, please refer to the following guides:
Main documentation page
List of all available Options
The plugin API
How to setup the plugin on your website
How to use only the basic plugin.
Requirements
Mandatory requirements
jQuery v1.7+
jQuery UI widget factory v1.9+
(included): Required for the basic File Upload plugin, but very lightweight
without any other dependencies from the jQuery UI suite.
jQuery Iframe Transport plugin
(included): Required for
browsers without XHR file upload support.
Optional requirements
JavaScript Templates engine
v3+: Used to render the selected and uploaded files.
JavaScript Load Image library
v2+: Required for the image previews and resizing functionality.
JavaScript Canvas to Blob polyfill
v3+:Required for the resizing functionality.
blueimp Gallery v2+: Used to display the
uploaded images in a lightbox.
Bootstrap v3+: Used for the demo design.
Glyphicons Icon set used by Bootstrap.
Cross-domain requirements
Cross-domain File Uploads
using the
Iframe Transport plugin
require a redirect back to the origin server to retrieve the upload results. The
example implementation
makes use of
result.html
as a static redirect page for the origin server.
The repository also includes the
jQuery XDomainRequest Transport plugin,
which enables limited cross-domain AJAX requests in Microsoft Internet Explorer
8 and 9 (IE 10 supports cross-domain XHR requests).
The XDomainRequest object allows GET and POST requests only and doesn't support
file uploads. It is used on the
Demo to delete uploaded files
from the cross-domain demo file upload service.
Browsers
Desktop browsers
The File Upload plugin is regularly tested with the latest browser versions and
supports the following minimal versions:
Google Chrome
Apple Safari 4.0+
Mozilla Firefox 3.0+
Opera 11.0+
Microsoft Internet Explorer 6.0+
Mobile browsers
The File Upload plugin has been tested with and supports the following mobile
browsers:
Apple Safari on iOS 6.0+
Google Chrome on iOS 6.0+
Google Chrome on Android 4.0+
Default Browser on Android 2.3+
Opera Mobile 12.0+
Extended browser support information
For a detailed overview of the features supported by each browser version and
known operating system / browser bugs, please have a look at the
Extended browser support information.
Testing
The project comes with three sets of tests:
Code linting using ESLint.
Unit tests using Mocha.
End-to-end tests using blueimp/wdio.
To run the tests, follow these steps:
Start Docker.
Install development dependencies:
npm install
Run the tests:
npm test
Support
This project is actively maintained, but there is no official support channel.
If you have a question that another developer might help you with, please post
to
Stack Overflow
and tag your question with blueimp jquery file upload.
blueimp/jQuery-File-Upload có phải mã nguồn mở không?
Có — blueimp/jQuery-File-Upload phát hành theo license MIT, nghĩa là mã nguồn mở để đọc, fork và (tùy license) tái sử dụng. Mã: github.com/blueimp/jQuery-File-Upload.
blueimp/jQuery-File-Upload có trang demo không?
Dự án có trang chủ ở https://blueimp.github.io/jQuery-File-Upload/. Tab "Readme" ở trang này thường có ảnh chụp và hướng dẫn bắt đầu nhanh.
blueimp/jQuery-File-Upload dùng license gì?
blueimp/jQuery-File-Upload phát hành theo license MIT. Nên mở file LICENSE trên GitHub để xác nhận — license metadata đôi khi lệch với thực tế dự án.
blueimp/jQuery-File-Upload là gì?
blueimp/jQuery-File-Upload (blueimp/jQuery-File-Upload) là dự án PHP trên GitHub. Theo mô tả gốc: File Upload widget with multiple file selection, drag&drop support, progress bar, validation and preview images, audio and video for jQuery. Supports cross-domain, chunked and resumable file uploads. Works with any server-side platform (Google App Engine, PHP, Python, Ruby on Rails, Java, etc.) that supports standard HTML form file uploads.
Đọc thêm về blueimp/jQuery-File-Upload ở đâu?
Trang TopGit này là một snapshot — tab "Readme" hiển thị nguyên văn README của repo (đã bỏ link, giữ ảnh). Repo GitHub ở github.com/blueimp/jQuery-File-Upload là nguồn chính thức.
Đọc đầy đủ README ở tab phía trên.
Muốn nghe thêm một ý kiến về jQuery-File-Upload?
Hỏi một AI đọc được trang này — một cú bấm là có ngay nhận định về jQuery-File-Upload.