Source code

Revision control

Copy as Markdown

Other Tools

<script>
function xhr(url) {
return new Promise(function(resolve, reject) {
var request = new XMLHttpRequest();
request.addEventListener(
'error',
function(event) { reject(event); });
request.addEventListener(
'load',
function(event) { resolve(request.response); });
request.open('GET', url);
request.send();
});
}
function load_image(url) {
return new Promise(function(resolve, reject) {
var img = document.createElement('img');
document.body.appendChild(img);
img.onload = resolve;
img.onerror = reject;
img.src = url;
});
}
function load_audio(url) {
return new Promise(function(resolve, reject) {
var audio = document.createElement('audio');
document.body.appendChild(audio);
audio.oncanplay = resolve;
audio.onerror = reject;
audio.src = url;
});
}
</script>