Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript通过“初始化函数”;第页“;_Javascript_Jquery_Web Applications - Fatal编程技术网

Javascript通过“初始化函数”;第页“;

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”,但我确信有更好的方法吗?还是设计

也许我有点困惑,但是。。您如何处理以下情况:

Webapplication(没有PHP,只有JS/HTMLCSS)和大量Javascript(JQuery)。 我有一个名为“application.js”的大文件,它包含在每个页面中

我想在不同的页面上启动不同的功能,如:

称为fire:index.init()

名为fire:about.init()

我觉得它有点像MVC的控制器,嗯?我的解决方案就像在每个页面上使用开关和stativ“var=pageName”,但我确信有更好的方法吗?还是设计问题

我知道像Require.js这样的lib,但这对我来说太多了


更具体地定义这个问题:这是实现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()
。这个“解决方案”是我没有想到的,谢谢:-)没问题,有时候,简单化的方法比重新发明轮子要好!