代码之家  ›  专栏  ›  技术社区  ›  jacksonakj

对于减少DotNetNuke加载的资源(javascript和css)数量,您有什么建议?

  •  1
  • jacksonakj  · 技术社区  · 15 年前

    DotnetNuke 5.2的主页大约是252.6KB。它使用15个javascripts和8个css文件。DotnetNuke使用的资源数量对我来说似乎太多了。我正在寻找创建限制JavaScript和CSS资源的DotnetNuke皮肤的最佳实践。

    4 回复  |  直到 12 年前
        1
  •  1
  •   David Storfer    12 年前

    从6.1开始,客户机资源管理组件就是解决这个问题的解决方案。它会自动合并所有文件,清理它们,删除注释,并根据需要缩小。

    http://www.dotnetnuke.com/Resources/Wiki/Page/Client-Resource-Management-API.aspx

    这需要一点适应,但控制非常好。你可以决定它们进入的顺序,如果你不想要一个大的单个文件,你可以将文件分组成一组-也许你想要一些脚本组合在一起,但不是全部。
    要记住的一件事是,当你进行开发时(正如下面的评论所指出的,我已经编辑了这篇文章)。 应始终在web.config中使用debug=true。 否则,如果使用资源管理并更改源文件,则需要通过进入“站点设置”、“客户端资源管理”和“增加版本”来不断重新生成组合文件。这是一种保护措施,可以防止任何东西无意中改变客户的浏览器缓存(这是一个弹出的消息框,让您知道什么时候做的)。我敢肯定,如果你有无数的用户,这可能会有所不同。

        2
  •  2
  •   bdukes Jon Skeet    15 年前

    你可以使用 Unload CSS Skin Object 删除框架加载的一些CSS文件的链接(如default.css、portal.css和任何特定于模块的CSS文件)。然后,您可以将所有这些样式移动到外观中(或者门户样式表,以您的喜好为准),这样就只有一个样式表被加载。

    我不知道任何结合javascript资源或减少dnn所需脚本数量的解决方案。

        3
  •  1
  •   braindice    15 年前

    其中一部分就是dnn的动态特性——r2i发布了一些关于结合javascript和css的好资源。

    一个具体的建议是将所有的皮肤和连续的CSS合并到一个文件中,如果您完全控制了该站点,可以将使用的模块中的CSS合并到同一个文件中。

    我知道除了telerik控件之外,还有一些功能可以组合资源文件

    另一个有帮助的方法是将图形组合成一个文件,并使用CSS(sprite技术)来减少加载的文件数量和对服务器的调用。

        4
  •  0
  •   digmike    15 年前

    就像上面所说的,这是野兽的本性。每个模块至少包含一个CSS文件。你可以从snapsis.com上查看pageblaster,我相信它会满足你的需求。