I want to do something like this but I get an "Invalid left-hand side in assignment" error.
var s = document.createElement("script");
s.type = "text/javascript";
s.src = "http://example.com/example.js";
s.data-flix-distributor = "12994";
Hyphens are not allowed in JavaScript names.
Attributes define additional characteristics or properties of the element such as width and height of an image. Attributes are always specified in the start tag (or opening tag) and usually consists of name/value pairs like name="value" .
In case you want to set a property using dot notation then it should be valid identifier other case use bracket notation.
Refer : custom attribute works only with element.getAttribute("attribute") but not "element.attribute"
To set an attribute to the element use setAttribute()
method.
s.setAttribute('data-flix-distributor', "12994");
Or update in dataset
property.
s.dataset['flix-distributor'] = "12994";
// or you can use camelCase to dash-style to use dot notation
s.dataset.flixDistributor = "12994";
Refer : Name conversion in dataset property
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With