我有一个使用一些 JavaScript/jQuery 插件的网站,然后我有一个default.js
文件,它为每个不同的页面使用插件功能。
例如,我拥有的一些插件包括:
- 自定义滚动条插件
- 幻灯片插件
- 一个cookie插件
- 等等
然后在default.js
文件中,我将执行如下操作(伪代码):
var scrolling = findScrollbarDiv;
scrolling.ScrollFunction({ options });
(然后对于幻灯片+我拥有的其他插件也是如此)
但是,如果有一个findScrollbarDiv
返回 null 的地方,我会收到类似以下的错误:
ScrollFunction 不是函数
这不是因为元素返回 null,而是因为我没有包含此页面的插件文件。我的理由是我不想在每个页面上都包含每个文件(即使它不需要),因为这可能会导致不必要的 HTTP 请求(尤其是在主页上,它只需要一个插件)
这个错误反过来又搞乱了 JavaScript 的其余部分。
克服这个问题的最佳方法是什么?无论是否需要,我都应该在每个页面上包含每个插件文件吗?或者是否有一些类似以下的 JavaScript 可以使用:
var scrolling = findScrollbarDiv;
if(scrolling != null) {
scrolling.ScrollFunction({ options });
}
(这对我来说有点笨拙,但如果这是最好的解决方案,请告诉我)
还是使用一个默认的 js 文件来启动所有插件是个坏主意?