以下是否有任何简单的解决方案。 让我们说我们正在构建一个嵌入小部件。
嵌入代码如下所示:
<div id="widget_2928282"></div>
<script src="widget.init.js"></script>
但是我们假设有人通过以下方式在一个页面上进行多次嵌入(假设他们复制/粘贴从网站生成的嵌入代码)
<div class="widget" id="122"></div>
<script src="widget.init.js"></script>
<div class="widget" id="123"></div>
<script src="widget.init.js"></script>
<div class="widget" id="124"></div>
<script src="widget.init.js"></script>
我知道你可能会告诉人们只有一次包括它,但我们永远不知道人们是否遵循它,我们不能假设他们这样做。
现在widget.init.js被包含3次。但是在小部件初始化文件中,我们为每个小部件运行一个循环使用小部件类的div,但是当然我们不希望运行这6次,而且我们也不希望包含小部件.init.js文件更多然后一次,因为我们只需要一次。
在调用第一个小部件初始化文件后,是否有任何智能方法可以过滤掉任何不必要的包含...所以我们总是只加载小部件初始化文件一次?
我们可以这样做吗?
var countScriptEmbeds = 0;
countScriptEmbeds++;
if (countScriptEmbeds == 1) {
// execute our script
}
还是那个方向的东西?.... 谢谢。