位置更改时Chrome扩展程序会重新加载文件

时间:2014-07-29 21:39:13

标签: javascript jquery angularjs google-chrome google-chrome-extension

尝试实施Chrome扩展程序,该扩展程序通过content_scripts嵌入到页面中。

我面临的挑战是我使用带扩展名的angularjs,需要先创建div然后添加控制器名称,然后启动控制器功能。例如:

var body = document.querySelector('body');
body.setAttribute('ng-controller', 'BodyCtrl');


app.controller('BodyCtrl', function ($scope, $http, PollPage, PageType) {
 ...
})

这适用于重新加载页面以及网站不通过javascript导航时。但是有些网站使用JS来加载dom并更改url这样做,以angularjs的方式使得它不是... document.querySelector ...代码的初始化。

尝试找到重新加载扩展程序的方法,重新加载文件或在网址更改时重新加载所有这些功能。建议?

我想过对DOM对象进行监视,这是荒谬和低效的,但我试图找到其他方法来做到这一点。我尝试触发一个在location.pathname change:

上执行此操作的函数
function addContent(){
    var body = document.querySelector('body');
    body.setAttribute('ng-controller', 'BodyCtrl');
}

由于JS花了几毫秒来更改页面中的内容,因此页面会发生变化。

0 个答案:

没有答案