在ASP.NET MVC站点中,JQuery代码在哪里?

时间:2010-04-01 15:14:09

标签: asp.net javascript jquery asp.net-mvc

我刚刚开始使用ASP.NET MVC。我将在我正在制作的网站上使用JQuery,但我不确定一件事: JQuery代码放在哪里?

这涉及两件事:

  • 我在哪里导入JQuery JavaScript文件? (我一直认为Master页面是一个很好的地方;我是对的,还是我必须在每个视图中导入它?)
  • 我的所有JQuery代码是否应该从Master页面引用(即,我将使用JQuery的代码存储在单独的.js文件中,并在<script>标记中引用它?)

提前致谢。

5 个答案:

答案 0 :(得分:2)

您将在每个页面中使用的任何内容都会在您的主页中导入。如果它只能在较小的范围内使用,请将导入放在将使用它的视图中。

关键是当它们甚至不被使用时不加载不必要的字节。我有一个通用的js文件,其中包含将在我的主机中导入的更多常用功能。然后在逐页的基础上,我只有该页面所需的js导入。

如果你把每个js import都放在你的master中,这意味着它会在每个页面上加载js,当时可能有一半甚至不用于那个特定的页面。这会对页面加载时间产生很大影响。

我建议使用能够将js压缩为缩小版本进行制作的东西。 Telerik has their Script Registrar这也是一个非常好的工具。

答案 1 :(得分:2)

将JQuery添加到Site.Master的底部,只是关于body标签。这意味着页面将加载而不是等待Javascript。

但是JQuery与每个视图相关,但是在View级别上添加。

答案 2 :(得分:2)

  • 您应该在母版页上导入您的JQuery库。可能你会在大多数视图中使用JQuery,因此只在一个地方引用它是最受欢迎的。
  • 通常情况下,将所有javascript代码都放在单独的文件中是一种很好的做法,因为内省的javascript越少越好。有两个原因:由于外部javascript文件被缓存,代码更易读,性能更好。

答案 3 :(得分:1)

我的jquery代码放在母版页的头部,因为它几乎用在网站上的每个视图中。你不会这样做的唯一原因是你只在几个视图上使用jquery库,在这种情况下,没有理由为每个用户加载它。

答案 4 :(得分:0)