If we detect an outdated / unsupported browser, we should not start the app (and let it most likely randomly crash), but show a note to the user that they should update their browser.
We check for features we use of current/modern standards (and thus implicitly for support of previous standard releases):
ES6:
Template strings
Promise
HTML5:
Constraint validation
DOM4:
classList
querySelector()
Check demo:
<script>
// Use ES3 here, because there still are browsers out there that support no more recent version
var syntax = true;
try {
eval("var x = `${1}`;");
...
} catch (e) {
syntax = false;
}
var outdatedBrowser = !(syntax && window.Promise && ...);
if (outdatedBrowser) {
document.write("<p>Please update your browser.</p>");
}
</script>
Also show a warning if JavaScript/scripting is disabled (without Meetling won't run and we cannot check for browser compatibility) and ask the user to enable it.
If we detect an outdated / unsupported browser, we should not start the app (and let it most likely randomly crash), but show a note to the user that they should update their browser.
We check for features we use of current/modern standards (and thus implicitly for support of previous standard releases):
Promise
classList
querySelector()
Check demo: