【发布时间】:2009-10-07 19:37:21
【问题描述】:
虽然我几乎可以肯定这个问题的答案是特定于浏览器的,但是否有任何浏览器定义了使用多个 标签并具有相同 src 属性时的行为?
比如……
<script src="../js/foo.js"></script>
...
<!-- what happens here? -->
<script src="../js/foo.js"></script>
我首先提出这个问题的原因是,在我的特殊情况下,我在使用 JQuery 的 ASP.NET MVC 应用程序中使用部分视图。 JQuery JS 文件都通过脚本标签包含在主模板文件中。我更愿意将脚本标签添加到部分视图文件中,以便在主模板上下文之外使用它们时,它们将自动包含所有必要的 JS 文件,而不是依赖另一个视图或模板来包含它们。但是,我当然不想导致 JS 文件必须多次传输到客户端,或者任何其他可能对用户体验产生负面影响的副作用。
我现在的想法是,如果不是全部的话,大多数主流浏览器(FF、Safari、IE、Opera)都会在第一次使用 JS 文件时缓存它,然后浏览器将在后续的脚本标签上使用缓存的副本(如果可用且尚未过期)。但是,缓存行为通常可以通过浏览器配置进行更改,因此依赖任何类型的缓存行为似乎都不太“安全”。
我是否只需要接受这样一个事实,即我的部分视图将依赖于其他模板或视图,包括相应的 JS 文件?
【问题讨论】:
标签: javascript html asp.net-mvc