tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

utils.js (954B)


      1 function loadScript(url, { doc = document }={}) {
      2  return new Promise((resolve, reject) => {
      3    const script = doc.createElement('script');
      4    script.onload = () => resolve();
      5    script.onerror = () => reject(Error("Script load failed"));
      6    script.src = url;
      7    doc.body.appendChild(script);
      8  })
      9 }
     10 
     11 function preloadImage(url, { doc = document }={}) {
     12  return new Promise((resolve, reject) => {
     13    const preload = doc.createElement('link');
     14    preload.rel = 'preload';
     15    preload.as = 'image';
     16    preload.onload = () => resolve();
     17    preload.onerror = () => resolve();
     18    preload.href = url;
     19    doc.body.appendChild(preload);
     20  })
     21 }
     22 
     23 /**
     24 *
     25 * @param {Document} document
     26 * @param {string|URL} url
     27 * @returns {HTMLAudioElement}
     28 */
     29 function appendAudio(document, url) {
     30  const audio = document.createElement('audio');
     31  audio.muted = true;
     32  audio.src = url;
     33  audio.preload = true;
     34  document.body.appendChild(audio);
     35  return audio;
     36 }