• [译]AngularJS中DOM操作


    再翻译一篇干货短文,原文:AngularJS jQuery

    虽然Angularjs将我们从DOM的操作中解放出来了,但是很多时候我们还是会需要在controller/view加载之后执行一些DOM操作。问题是我们将DOM操作的代码放到controller中,然而controller是先于view加载的,这个时候我们要操作的元素还是不存在的。

    这里有几种办法解决这个问题,我们按照AngularJS最佳实践方法的推荐度,从高到低列出来:

    1. 监听$viewContentLoaded广播事件

      $scope.$on('$viewContentLoaded', function(event) {
      //Your code goes here.
      });
      
    2. 使用0秒延迟的$timeout,这样view已经加载完了($timeout是在DOM呈现之后执行的), 我们的代码在下一个$digset循环中执行

      $timeout(function() {
      //Your code goes here.
      });
      
    3. 使用流行而古老的jQuery方式(在大多数的场景中都是工作的)

      jQuery(window).ready(function() {
      //Your code goes here.
      })
      
  • 相关阅读:
    left join问题
    SQL索引
    数据库查询优化
    define and inline
    程序的内存分配
    __closure
    this指针
    java笔记
    Visual Studio Code(VSCODE)语言设置
    Excel 2010如何打开多个独立窗口?
  • 原文地址:https://www.cnblogs.com/wancy86/p/ng-DOM.html
Copyright © 2020-2023  润新知