【问题标题】:If you can't pass a parameter to a javascript file, then what are the parameters doing in this code?如果您不能将参数传递给 javascript 文件,那么这段代码中的参数是做什么的?
【发布时间】:2013-12-28 00:01:18
【问题描述】:

我知道您不能通过 URL 后的变量将参数传递给 javascript 文件(使用 php 的方式)。 - Passing parameters to JavaScript files - Can you pass URL parameters to a Javascript file?

但我正在查看来自生产站点的实时代码,如下所示:

<script type="text/javascript" src="/sites/default/files/js/gmap_markers.js?f"></script>

如果?f不是参数,那它在做什么呢?

【问题讨论】:

  • 您没有发布足够的代码来评估f 在那里所做的事情。但它可能是一个版本指示符。
  • 我们在工作中经常使用此类参数进行缓存清除。目前尚不清楚 ?f 在做什么,但可能就是这样。它也可能是对提供文件的任何内容的说明。
  • @Maus 缓存破坏器需要一个随机(或至少是变化的)值作为它的一部分。否则,会在缓存中找到该 URL。
  • 由于 gmap_markers.js 显然在您自己的服务器上,您或其他有权访问该服务器的人应该知道它在做什么。问问是谁把它放在那里的。
  • @Barmar 缓存被破坏了?也许?

标签: javascript


【解决方案1】:

这不是 Javascript 参数;它是一个 URL 参数。它控制着从网站下载脚本本身的方式。

<script type="text/javascript"
  src="https://maps.googleapis.com/maps/api/js?key=API_KEY&sensor=SET_TO_TRUE_OR_FALSE">
</script>

例如,您问题示例中参数字母的更改可能是 Javascript 版本的更改。将f 更改为g 会使浏览器缓存失效,并强制浏览器下载新版本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-05
    • 2011-01-12
    相关资源
    最近更新 更多