# HG changeset patch # User Nicholas Jillings # Date 1463749476 -3600 # Node ID 2ddc68898dff8cbebad9c8a71a937172494cf259 # Parent 8696696f3a791afec53feb728cf185e8dc8c1d20 Fix for #81. Browsers which cannot start a Web Audio context will fail with a message listing supported browsers diff -r 8696696f3a79 -r 2ddc68898dff index.html --- a/index.html Fri May 20 13:29:26 2016 +0100 +++ b/index.html Fri May 20 14:04:36 2016 +0100 @@ -17,11 +17,7 @@ - - - - - + diff -r 8696696f3a79 -r 2ddc68898dff js/core.js --- a/js/core.js Fri May 20 13:29:26 2016 +0100 +++ b/js/core.js Fri May 20 14:04:36 2016 +0100 @@ -116,7 +116,7 @@ } } -window.onload = function() { +var onload = function() { // Function called once the browser has loaded all files. // This should perform any initial commands such as structure / loading documents @@ -3225,3 +3225,5 @@ return this.root; }; } + +onload(); \ No newline at end of file diff -r 8696696f3a79 -r 2ddc68898dff js/loader.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/js/loader.js Fri May 20 14:04:36 2016 +0100 @@ -0,0 +1,29 @@ +// Script to load the relevant JS files if the system supports it + +window.onload = function() { + // First check if the Web Audio API is supported + if (window.AudioContext == undefined && window.webkitAudioContext == undefined) { + // Display unsuported error message + var body = document.getElementsByTagName("body")[0]; + body.innerHTML = "

Sorry! Your browser is not supported :(

Your browser does not support the HTML5 Web Audio API. Please use one of the following supported browsers instead.

"; + var table = document.createElement("table"); + table.border = "0"; + table.innerHTML = "Chromev10 or newer"; + table.innerHTML += "Firefoxv25 or newerSafari (OSX) v6 or newer, OSX only"; + table.innerHTML += "Safari (iOS)iOS 6.1 or newer"; + table.innerHTML += "Edge12 or newer"; + body.appendChild(table); + } else { + var head = document.getElementsByTagName("head")[0]; + var src_list = ['js/specification.js', 'js/core.js', 'js/loudness.js', 'js/xmllint.js', 'js/WAVE.js']; + for (var i=0; i - - - - - +