如何将JavaScript代码放在ASP.NET页面的底部?

时间:2010-04-05 06:40:30

标签: javascript asp.net

在我的ASP.NET页面中,我指的是外部JavaScript文件。

根据我在网络上的学习,建议始终在页面底部放置内联JavaScript代码。没有关于如何为外部JavaScript引用执行此操作的信息。

我想知道,如果我指的是外部JavaScript文件,我应该在哪里写它?

> 1. Inside <Head/> top of the page
> 2. bottom after closing tag of </form>

3 个答案:

答案 0 :(得分:1)

将JavaScript代码放在页面底部只有在内联脚本时才有效。

查看Google page-speed教程以获取更多信息。

  

<强>推荐

     

如果可能,请将外部脚本放在外部样式表之后。

     

浏览器按照它们的顺序执行样式表和脚本   出现在文档中。如果是JavaScript代码   没有依赖CSS文件,   你可以在之前移动CSS文件   JavaScript文件。如果JavaScript代码确实依赖   关于外部包含的CSS   文件 - 例如,样式   您正在写的输出需要   JavaScript代码中的文档 - 这个   是不可能的。

     

尽可能在其他资源之后插入内联脚本。

     

在所有其他资源之后放置内联脚本可以防止阻塞   其他下载,它也启用   渐进式渲染。但是,如果   那些“其他资源”是外在的   内联脚本的JavaScript文件   依赖,这可能是不可能的。在   这种情况下,最好移动   CSS文件之前的内联脚本。

答案 1 :(得分:1)

如果您要为每个页面动态使用该脚本,则可以采用更好的方法。把它放到你的masterPage,

protected void Page_Load(object sender, EventArgs e)
{
    string a = "$(function() {";
    a +="$('.Utility.division() .items').hide();";
    a += "});";
    a += "</script>";
    Page.RegisterClientScriptBlock("a", a);
}

Utility.division()是您的动态变量,在utility.cs//中声明。

答案 2 :(得分:0)

@spielersun:我认为你的意思是Utility.division()是你的动态变量,它在utility.js而不是utility.cs中声明。