Javascript通过“初始化函数”;第页“;
也许我有点困惑,但是。。您如何处理以下情况: Webapplication(没有PHP,只有JS/HTMLCSS)和大量Javascript(JQuery)。 我有一个名为“application.js”的大文件,它包含在每个页面中 我想在不同的页面上启动不同的功能,如: 称为fire:index.init() 名为fire:about.init() 我觉得它有点像MVC的控制器,嗯?我的解决方案就像在每个页面上使用开关和stativ“var=pageName”,但我确信有更好的方法吗?还是设计问题 我知道像Require.js这样的lib,但这对我来说太多了Javascript通过“初始化函数”;第页“;,javascript,jquery,web-applications,Javascript,Jquery,Web Applications,也许我有点困惑,但是。。您如何处理以下情况: Webapplication(没有PHP,只有JS/HTMLCSS)和大量Javascript(JQuery)。 我有一个名为“application.js”的大文件,它包含在每个页面中 我想在不同的页面上启动不同的功能,如: 称为fire:index.init() 名为fire:about.init() 我觉得它有点像MVC的控制器,嗯?我的解决方案就像在每个页面上使用开关和stativ“var=pageName”,但我确信有更好的方法吗?还是设计
更具体地定义这个问题:这是实现JS的“好”方法吗?我知道我可以访问windows.location或通过标题或其他任何方式进行标识 您可以检查
document.URL
并围绕它构建一个案例语句
var url = document.URL;
switch (url) {
case "http://mysite.de/index":
index.init();
break;
case "http://mysite.de/about":
about.init();
break;
}
或者,如果这个问题变得复杂,您可以使用backbone.js之类的工具。为什么不这样做呢
<script type="text/javascript">
index.init();
</script>
index.init();
在索引页中?然后在每个页面上调用不同的函数
我知道动态方式很酷,但有时你可能会对这么简单的事情进行过度设计。看看
窗口。位置如何?或者是
或
标记上的某种类?我不确定您想要的是什么,但听起来您可以创建一个包含与每个页面相关的函数的对象,然后执行pageFunctions[location.pathname].init()
。这个“解决方案”是我没有想到的,谢谢:-)没问题,有时候,简单化的方法比重新发明轮子要好!