Uppload supports the most recent versions of all major browsers, like Chrome, Firefox, Safari, Opera, and Edge. It also works with Internet Explorer 9 and 10, but you need two polyfills.
Most Uppload plugins have near-universal support with modern browsers, just like Uppload. However, some plugins may require specific features, and that’s specified in their class. For example, the
supports function of the Camera service looks like this:
supports = () => !!( window.navigator.mediaDevices && window.navigator.mediaDevices.enumerateDevices );
In this case, Uppload will only add the plugins that the browser environment supports, so only users who have support for the Media Devices API will be able to use the camera feature. For the rest, that option will simply not be visible.
Uppload relies upon ES2015 features like Promise and HTML5 video and canvas. Some Uppload features require polyfills to work in older versions of major browsers.
If you want to support browsers that don’t support these features, you will want to import the required polyfills. By default, Uppload does not ship with any polyfills. Uppload exposes native modules, not UMD.
Here’s a summary of some web features Uppload uses, and their browser support:
- Internet Explorer 9+ support:
- HTML5 elements: 99%+
- querySelector/querySelectorAll: 99%+
- getBoundingClientRect: 99%+
- Inline SVGs: 98%+
- Array features: forEach, isArray, filter, map
- Dependencies: Cropper.js
- Internet Explorer 10+ support:
- No IE support (polyfills recommended):