开发者问题收集

如何修复 Elementor WordPress 中的 JS addEventList?

2022-08-13
714

当我尝试通过 Elementor 中的“HTML 编辑”元素将脚本添加到 Elementor 时,或者在编辑 HTML 时在 Elementor 的任何字段中,addEventListener 在管理员之外不起作用。因此,如果您以管理员身份加载已编辑的页面,它会起作用,如果您以访客身份加入,则会发送错误:“未捕获 TypeError:无法读取未定义的属性(读取‘addEventListener’)”。所有元素都可用,尝试了所有方法,但不起作用。有任何添加脚本的选项吗?

function count() {
    let percent = Math.round(Number(document.querySelectorAll(".form-control")[2].value)/100*35+Number(document.querySelectorAll(".form-control")[2].value));
    document.querySelectorAll(".form-control")[3].value = percent ;
    document.querySelectorAll(".form-control")[4].value = Math.round(percent*1.35);
}
document.querySelectorAll(".form-control")[2].addEventListener("input", count);
2个回答

如何等待元素存在? + 管理面板上有一个额外的输入,因此当我不是以管理员身份使用 querySelectorAll 搜索时,我得到的值是错误的

BackEndJavaLove
2022-08-13

我遇到了类似的问题,我通过在整个 javascript 代码之前添加

document.addEventListener("DOMContentLoaded", () => { // your code });

解决了该问题。

这里 找到了解决方案。

Osuntuyi Michael
2023-10-10