【问题标题】:Change Coldfusion tags to leverage CDN hosted javascript libraries更改 Coldfusion 标签以利用 CDN 托管的 javascript 库
【发布时间】:2010-01-13 06:10:14
【问题描述】:

我收到了一个 Coldfusion 应用程序来支持,我注意到 CF 正在向某些页面添加脚本标签。这些 js 文件似乎支持某些 CF 标记,因为我在 .cfm 文件(或任何后续包含文件)中找不到对 .js 文件的任何引用。 .js 文件是流行的库,可以通过 CDN 访问,而不是从我们的 Web 服务器提供它们。所以我的问题是:

能否更改 CF 标记或 Coldfusion 设置以更新 .js 网址?

【问题讨论】:

  • 是script标签还是cfscript标签?

标签: coldfusion cdn


【解决方案1】:

使用 scriptsrc 和 cssSrc 属性

scriptsrc 属性在以下情况下很有用 JavaScript 文件不在 默认位置。这个属性是 在某些托管环境中需要 和阻止访问的配置 到 /CFIDE 目录。

默认的scriptsrc值为 由默认 CFFORM 确定 ScriptSrc 目录设置 服务器设置 > 设置页面 ColdFusion 管理员。对于 cfform 标签,标签的 scriptsrc 属性 优先于该属性。

只有当 cfajaximport 标签位于顶层 页;也就是客户端的一个页面 直接要求。你不能使用它, 例如,在一个页面上 在 cfwindow 标记源中指定 属性。

当您将 cfajaximport 标签与 一个 scriptsrc 属性,指定 目录必须具有相同的结构 作为 /CFIDE/scripts 目录。为了 例如,如果您指定 scriptsrc="/resources/myScripts", AJAX 使用的 JavaScript 文件必须是 在 /resources/myScripts/ajax 目录。

此属性指定文件夹 包含 ColdFusion 所有后续的客户端文件 当前页面上的标签,不仅仅是为了 基于 AJAX 的标签。因此, 目录树必须包括所有 ColdFusion 客户端文件由 那些标签。例如,如果一个 cfform 页面上的标记在 Flash 或小程序中 格式,包括 CF_RunActiveContent.js 文件中 scriptsrc 指定的目录 属性。

您使用 cssSrc 属性来 指定 CSS 文件的位置 ColdFusion AJAX 功能所需的。 此属性覆盖 scriptsrc/ajax/resources 目录 当前页面。因此,如果所有 使用自定义脚本的页面rc 目录也使用自定义的 cssSrc 目录,您不必包括 ColdFusion AJAX CSS 文件在 scriptsrc 目录树。

例子:

<cfajaximport cssSrc="/collegeApp/application/cssFiles" 
    scriptsrc="/collegeApp/ajaxScripts" 
    tags="cftooltip, cfwindow">

参考:Adobe ColdFusion 9 * cfajaximport

【讨论】:

    【解决方案2】:

    CF 应该包含的唯一 .js 文件用于 cfform 或 cf ajax 之类的东西,它们将指向内部的、特定于 CF 的 .js 文件。我知道底层的 cfajax 东西使用 ExtJs,但我想它是它的定制版本,所以指向外部主机可能会导致它无论如何都中断。

    当您提到“流行库”时,我不确定您指的是什么。你能详细说明一下吗?我怀疑您是否可以用外部公共库替换任何内部 CF .js 库,并且您的 CF 代码仍然可以工作。

    Henry 指出了 cfajaximport 标记的使用,但根据文档,它仅适用于本地 .js 文件:

    “指定相对于 Web 根目录的 URL,该目录包含 ColdFusion 使用的客户端脚本文件。”

    不过,看看一个有效的 url 是否可以工作会很有趣。

    【讨论】:

      猜你喜欢
      • 2015-02-25
      • 2015-04-06
      • 1970-01-01
      • 1970-01-01
      • 2012-02-27
      • 2017-12-03
      • 2020-08-03
      • 2023-02-07
      • 2013-08-03
      相关资源
      最近更新 更多