【问题标题】:document.ready alternative for AngularJS outside of AngularJSAngularJS 之外的 AngularJS 的 document.ready 替代品
【发布时间】:2015-01-24 00:28:54
【问题描述】:

我正在构建一个小的 Chrome 扩展程序来与 Angular 网站进行交互。我可以通过$(document).ready() 成功捕获整页重新加载,但通过ng-view 更改页面不会更改ready 状态,所以我不确定如何从Chrome 扩展程序中捕获该事件。

我应该如何从 Chrome 扩展程序中捕获 ng-view 更改?最好不要向 AngularJS 引入扩展依赖。

【问题讨论】:

  • 你试过监听 popstate 事件吗?
  • @dewd 不,我得试试。我担心在渲染 DOM 之前 popstate 发生变化的问题。
  • 这是可能的。大约 18 个月没有使用 angular,所以即使使用 pushstate 也不记得 - 它可能不是 IE10 之前的版本。我敢肯定,对视图/状态关系有更多了解的人将能够提供帮助。
  • @dewd,尝试了 popstate,看起来它不起作用。我认为在有 DOM 可以操作之前 URL 会发生变化。
  • ..这是有道理的。 popstate 确实被触发了吗?无论如何,看起来 elzi 走在正确的轨道上。

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


【解决方案1】:

Angular 的 DOM 就绪等价物是

angular.element(document).ready(function () {
    console.log('Hello World');
});

如果您想检测视图更改,可以查看$httpProvider.responseInterceptors。查看第一个答案in this SO question

编辑我现在明白你的意思是从角度之外检测角度事件?我将在此处留下我的答案 - 尽管它可能不是您问题的确切答案。

【讨论】:

    猜你喜欢
    • 2014-11-02
    • 2017-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多