【发布时间】:2021-06-28 11:12:30
【问题描述】:
我正在使用下面的代码按顺序加载文件并在页面加载时加载。但我得到了
$ 不是函数
最后一个文件“scripts.js”的错误。换句话说,jquery 和 bootstrap 文件总是正确加载,但最后一个文件(我的自定义脚本)显示错误并且没有任何自定义工作。我在做什么?感谢您的帮助:)
<script type="text/javascript">
function chamajquery() {
var element = document.createElement("script");
element.src = "<?php echo esc_url(get_template_directory_uri()); ?>/assets/js/jquery-3.6.0.min.js";
document.body.appendChild(element);
chamabootstrap();
}
function chamabootstrap() {
var element2 = document.createElement("script");
element2.src = "<?php echo esc_url(get_template_directory_uri()); ?>/assets/js/bootstrap.bundle.min.js";
document.body.appendChild(element2);
chamascriptsmanuais();
}
function chamascriptsmanuais() {
var element3 = document.createElement("script");
element3.src = "<?php echo esc_url(get_template_directory_uri()); ?>/assets/js/scripts.js";
document.body.appendChild(element3);
}
window.addEventListener("load", chamajquery);
【问题讨论】:
-
在追加后立即使用先前的脚本还为时过早。它仍然需要加载异步。在脚本元素上使用加载事件
-
@charlietfl 你能举个例子吗?
-
顺便说一句,您为什么需要同时使用 Javascript 和PHP 来附加 脚本?这对我来说似乎有点“过度设计”。
-
PHP 获取子主题的 URL (Wordpress)。剩下的就是 JS。我不认为这是最好的解决方案,但它可以工作并提高页面速度洞察点(我客户的主要目标)。