Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
ニート!ニート!ニート!の画像

2010

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

2010

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
* * Again: this will **not** prevent inline script, e.g.: * . * * This workaround is possible because Safari supports the non-standard 'beforeload' event. * This allows us to trap the module and nomodule load. * * Note also that `nomodule` is supported in later versions of Safari - it's just 10.1 that * omits this attribute. * --> */ (function () { const check = document.createElement('script'); if (!('noModule' in check) && 'onbeforeload' in check) { let support = false; document.addEventListener( 'beforeload', (e) => { if (e.target === check) { support = true; } else if (!e.target.hasAttribute('nomodule') || !support) { return; } e.preventDefault(); }, true, ); check.type = 'module'; const blob = URL.createObjectURL( new window.Blob([], { type: 'text/javascript' }), ); check.src = blob; check.onload = () => { URL.revokeObjectURL(blob); }; document.head.appendChild(check); check.remove(); } })();