I am trying to put the tsParticles ‘links’ animation in my Discourse theme.
However, the Console says that:
theme-field-96515-common-html-script-1.js:36 Uncaught (in promise) ReferenceError: tsParticles is not defined
at theme-field-96515-common-html-script-1.js:36:13
at HTMLDocument.<anonymous> (theme-field-96515-common-html-script-1.js:36:13)
But you can see that in my code, it clearly is, at the top.
Here is my code:
<script type="text/discourse-plugin" version="1.14.0">
var script = document.createElement('script');
script.src = "https://cdn.jsdelivr.net/npm/@tsparticles/preset-links@3.0.2/tsparticles.preset.links.bundle.min.js";
document.head.appendChild(script);
const showLinks = settings.show_tsParticles_links_animation;
if (showLinks) {
document.addEventListener("DOMContentLoaded", function() {
var elements = document.querySelectorAll('section#main');
elements.forEach(function(el) {
var wrapper = document.createElement('div');
wrapper.className = 'wrapper';
el.parentNode.insertBefore(wrapper, el);
wrapper.appendChild(el);
});
var elements = document.querySelectorAll('div#main-outlet-wrapper');
elements.forEach(function(el) {
var wrapper = document.createElement('div');
wrapper.className = 'content';
el.parentNode.insertBefore(wrapper, el);
wrapper.appendChild(el);
});
(async () => {
await tsParticles.load({
id: "tsparticles",
options: { preset: "links" },
background: {
"color": {"value":"#0d47a1"}
}
});
})();
});
}
</script>
Moreover, when looking at he <head>
of the page, this tag is there.