Skip to content

[Feature Request] Add style support  #25

@mahammad-sixberries

Description

@mahammad-sixberries
function loadStyle (href) { 
  return new Promise(function (resolve, reject) {
    let shouldAppend = false;
    let el = document.querySelector('link[href="' + href + '"]');
    if (!el) {
      el = document.createElement('link');
      el.rel = 'stylesheet';
      el.async = true;
      el.href = href;
      shouldAppend = true;
    }
    else if (el.hasAttribute('data-loaded')) {
      resolve(el);
      return;
    }

    el.addEventListener('error', reject);
    el.addEventListener('abort', reject);
    el.addEventListener('load', function loadScriptHandler() {
      el.setAttribute('data-loaded', true);
      resolve(el);
    });

    if (shouldAppend) document.head.appendChild(el);
  });
};

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions