generated at
install-CDN
cdnjsなどからscrapboxにscriptを読み込むための関数

script.js_old
export function installCDN({id,src, module = false} = {}) { const oldScript = document.getElementById(id); oldScript?.parentNode.removeChild(oldScript); const script = document.createElement("script"); script.src = src; script.id = id; if (module) {script.type = 'module';} document.head.appendChild(script); }

load イベントを使ったらsetTimeoutの代わりにawaitでいけるかな?
こんなイベントあったんだ
便利じゃん!
script.js
export const installCDN = ({id, src, module = false} = {}) => new Promise((resolve, reject) => { const oldScript = document.getElementById(id); oldScript?.parentNode.removeChild(oldScript); const script = document.createElement("script"); script.addEventListener('load', () => resolve()); script.addEventListener('error', ev => reject(ev)); script.src = src; script.id = id; if (module) { script.type = 'module'; } document.head.appendChild(script); });

試してみたけどCSPに引っかかったmiyamonz
これもfirefoxとかchromeでの挙動の違いかな?
引っかかったのは scrapbox.io/files のJSファイルですか?takker
その場合は、おそらく script-src で制限されているのだと思います
cdnjs.cloudflare.com はChromeでも引っかからないはずです
これだとできた!miyamonz
miyamonzが失敗したのは cdn.jsdelivr.net
scrapbox自体が利用してるcdnと同じものを使えば制限に引っかからないということか
そういうことですねtakker