SmoothState 为所有页面保留 js 文件,一些功能被替换

SmoothState keeping js files for all pages, some functions being repalced

我网站上的很多页面都有自己的 javascript 文件,这些文件包含在各自的页面中。

SmoothState 提供了 onAfter 处理程序来重新初始化插件,其中一些页面的 javascript 文件有自己的 "init function" 来初始化他们正在使用的任何插件。很明显,目标是在 onAfter 处理程序中调用这些初始化函数。

不过,SmoothState 似乎正在加载每个页面 javascript 文件。结果是,其中一些脚本具有相同名称的函数(但明显不同的函数),这导致其中一些脚本成为 "replaced."

例如,init 函数从未被正确调用,因为最后加载的页面覆盖了它。

我试了一下。

您需要将每个页面唯一的 <script> 标记放入您在初始化期间提供给 smoothstate 的容器中。即,在 "main" div 内。也许这在某处的文档中,但我没有看到它。

主 div 之外的所有内容都不会重新加载。