仅在特定URL处在全局文件中执行Javascript

时间:2013-09-22 14:45:36

标签: javascript jquery

为了扩展稍微错误的标题,我有一个网站使用适量的jQuery来提高可用性,例如渲染图和执行AJAX请求。目前,所有内容都被整理成一个看起来很恐怖的main.js文件,该文件包含在每个页面上。

我想通过重构代码来改进这一点。例如,如果用户位于某个URL,我只想要呈现某个AJAX请求和图形。同样,我希望仅在用户处于其他URL时触发特定事件。

我正在努力解决的问题是检测用户何时处于某个URL。我可以使用window.location虽然看起来很糟糕,但会根据查询字符串http://https://进行更改。我已经看到过去的其他网站对他们的网站有一个巨大的对象,并使用它如下:

var site = new Site.getInstance();
site.init();
site.doWhatever();

基本上我的问题归结为,我如何正确地整齐地构建一个充满jQuery的Javascript文件,同时仍然在main.js中保留它而不将其分成多个文件?

1 个答案:

答案 0 :(得分:0)

nnnnnn在他的评论中有一个好主意,这是另一个:

window.location不是一个正确的字符串,虽然它似乎表现得像一个。它有一个名为pathname的简洁属性,可以为您提供所需的信息。

如果网址为http(s)://yourdomain.com/pages/default.php,则无论查询字符串和协议如何,AFAIK window.location.pathname都会保留pages/default.php