Skip to content
get current executing script, with support for IE9+ and Firefox
JavaScript HTML
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/workflows
fixtures
.editorconfig
.gitignore
LICENSE
README.md
index.js
nightwatch.conf.js
package.json
test.js
yarn.lock

README.md

@soda/get-current-script CI

It is basically a function that returns document.currentScript but with support for IE9-11, thanks to https://github.com/amiller-gh/currentScript-polyfill.

It also works around a Firefox issue when the script is called in a microtask, which makes document.currentScript unusable in a webpack dynamic-imported chunk.

It is shipped as a utility function rather than a polyfill, because we can't easily tell if the document.currentScript is returning null due to the Firefox issue or because it's running in an event handler / a callback.

The implementation here may not adhere strictly to document.currentScript spec when called in async code or in a callback. In these situations the spec calls for document.currentScript to return null. However, for the grand majority of your document.currentScript needs, this utility will do the job!

Usage

npm i @soda/get-current-script
const getCurrentScript = require('@soda/get-current-script')
const script = getCurrentScript() // the current executing <script> element
You can’t perform that action at this time.