是否可以使用javascript在浏览器地址栏中捕获URL更改

时间:2014-10-21 15:05:48

标签: javascript angularjs url-rewriting location

是否可以通过angular或JavaScript在浏览器的地址栏中捕获URL更改?

如果有人手动更改浏览器地址栏中的URL,我想抓住此事件。

2 个答案:

答案 0 :(得分:0)

您也可以通过以下方式获取它:

$rootScope.$on('$routeChangeStart', function(params) { 
   //catch event
});

您可以在angular docsstackoverflow

了解更多相关信息

答案 1 :(得分:-1)

您可以通过创建如下的事件处理程序来检测哈希值中的更改(例如http://example.com/#foo):

window.addEventListener('hashchange', function(e) { 
    console.log('Hash has changed!'); 
});

具体到角度,你可以使用$routechangestart事件来捕捉URL的变化(即路线)

$rootScope.$on("$routeChangeStart", function (event, next, current) {
    // do something ...
}); 

或者,您可以通过routeProvider定义路线,并根据设置的路线执行特定的控制器。