javascript - 将导航 html 代码移动到单独的文件,javascript 现在不起作用
问题描述
我的导航栏完全使用汉堡图标来使用 javascript 文件进行动画处理,直到我决定将导航代码移动到单独的文件中,以便可以将其加载到所有不同的 html 文档中。现在,当我尝试单击汉堡图标时,我收到以下错误。代码仍然加载导航栏(徽标、图标、格式),但 javascript 不起作用,因为它说 getElementById 的值为 null。不知道如何解决。
解决方案
您的代码在.load()
函数可以返回任何内容之前运行。它异步运行以停止阻止其他代码运行。您可以将回调函数提供给加载函数,加载函数返回时将调用该回调函数。然后将更新 DOM 以了解您的导航元素。您可以将其他代码封装在一个函数中,然后将该函数名称作为参数,或者您可以传递一个匿名函数,然后将所有内容都放在其中。
例子:
$('#nav-placeholder').load('assets/nav.html', function() {
const ham = document.getElementById('ham');
ham.addEventListener...
...
..
.
});
推荐阅读
- java - Lombok - 值可能尚未初始化
- java - 如何使用 tools.jar 编译方法打印 java 编译器错误日志?
- r - 为什么编织 pdf_document 需要很长时间?
- python - 从字典中删除空元素
- android - React Native Android 中的 AAB Bundle Size 太大
- kubernetes - Pod 是否使用 k8s API 服务器来获取规范声明?
- javascript - 如何从弹出窗口中获取复选框值以使其更改页面的 CSS?
- c++ - 多态向量 C++ – 没有匹配的成员函数来调用“比较”
- sql - 将层次结构放在其自己的单独维度中还是将其设置为相关维度的一部分?
- algorithm - Mandelbrot 集的内部距离估计算法