我使用<包含.js文件链接>属性。
<script type="text/javascript" src="script.js"></script>
我想提出一个不应该在页面中包含多次的条件。 我怎么能把这样的条件只放在HTML中。如果仅使用HTML无法做到这一点,那么我可以使用哪些其他选项来设置这种条件。
答案 0 :(得分:3)
我认为HTML无法实现。 使用JavaScript。
// keep track of scripts
var scripts = { };
function includeOnce(s) {
// if the script is not included before
if (!(s in scripts)) {
// add script
var sc = document.createElement('script');
sc.src = s;
document.body.appendChild(sc);
scripts[s] = 1;
}
}
要包含脚本:
<script>{ include_once("script.js") }</script>
答案 1 :(得分:0)
除非您的脚本在加载时执行代码,否则可能足以确保缓存JS文件。然后在最糟糕的情况下,您只发送一个if-modified-since查询,其开销很小,尤其是在支持HTTP流水线的情况下。
答案 2 :(得分:-1)
在script.js文件中创建一个全局变量,如:
var isIncluded = true;
然后包含你的脚本
<script>!window.isIncluded && document.write('<script src="script.js"><\/script>')</script>