您好我是编程抱歉超级noob问题的新手,我刚开始使用JQuery只是一些简单的插件,一个菜单留在顶部并制作一个可点击的div它工作正常,这个div和这个菜单在我的网站的每个页面上都有,他们目前正在我的default.aspx页面上工作,我的问题是,我应该复制粘贴这个:
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="/page_theme/javascript/menu.js"></script>
<script src="/page_theme/javascript/jquery.clickable.div.js"></script>
我的网站的每个页面都需要这些才能使其正常工作,例如在faq.aspx,my_account.aspx,contact_us.aspx等其他部分。问题是这个网站有超过50页,我希望这两个插件可以在他们每个人身上使用,因为这是主菜单,这个div也会出现在每一个上面。
对于试图学习如何做到这一点的noobish问题感到抱歉.... thx
答案 0 :(得分:1)
是的,Javascript文件需要包含在您希望功能运行的每个页面上。
为了减轻这种痛苦,您可以将脚本放在一个单独的文件中,在需要时将其包含在每个页面中。这样做的另一个好处是,如果添加新脚本并且每个包含该文件的页面都已更新,则可以更新scripts.aspx
文件一次。
要执行此操作,请设置包含脚本的单独scripts.aspx
文件:
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="/page_theme/javascript/menu.js"></script>
<script src="/page_theme/javascript/jquery.clickable.div.js"></script>
在每个页面上,您希望脚本显示,然后您可以写:
<% Response.WriteFile("scripts.aspx") %>
当然,scripts.aspx
位于同一目录中。如果需要,请更新文件路径。
答案 1 :(得分:0)
我建议您创建一个公共页面,例如common.aspx
或config.aspx
,并将其包含在每个页面的顶部。考虑到你的导航栏将在每个页面上使用jQuery,这可能是一个好主意,所以你不要忘记。
另一种选择是创建一个特定页面,例如header.aspx
,其中包含导航栏/菜单的代码以及jQuery链接,并将其包含在每个页面的顶部,而不是复制粘贴代码。
答案 2 :(得分:0)
我有这个确切的事情,但我正在编写一个基于Python的Flask应用程序。这款配有名为Jinja的模板引擎。每个页面都是由模板组成的,而不是一个完整的东西,每次都在服务器端组装成一个单独的HTML。
我有一个site_wrapper.html模板,其中包含站点范围的指令(样式表,javascript,主要布局div),然后是“扩展”或从站点范围模板继承的特定页面的模板。
这适合我。
答案 3 :(得分:-2)
是的,您必须将这些内容添加到每个页面。
你可以创建一个新页面,比如&#34; headers.inc&#34;,并在每个页面的头部引用它:
<head>
<!-- #include file = "headers.inc" -->
</head>
由于您使用的是.NET,您可能会根据自己的喜好找到母版页(我不会)。这也可以让你整合你的JS包。
此外,如果您决定通过将脚本存储在.NET变量中来包含,则可以使用此简写(而不是Response.Write):
<head>
<%=scripts%>
</head>