一,网上一些不起作用的方法
1,在controller里面利用
on或者
watch
$scope.$on('$viewContentLoaded',function() {
alert('1');
});
$scope.$watch('$viewContentLoaded',function() {
alert('1');
});
2,利用data-ng-init
<div ng-controller="test">
<div data-ng-init="load()" ></div>
</div>
$scope.load = function() {
alert('code here');
}
二,网上起作用的方法(只在初始化界面起作用)
此方法调用的angular的方法,angular.element(window)并没有转变为jquery对象,这可能是个特例,不引入jquery就起作用!
angular.element(window).bind('load',function() {
alert('1');
});
三,jquery的方法(需要引入jquery)(只在初始化界面起作用)
angular.element(document).ready(function () {
alert('1');
});
四,$timeout的方法(在方法中急用,但不建议使用)
在方法中$timeout中内容会最后执行,相当于dom加载完再执行,
但多数情况要监控dom加载完是为了变化样式,推荐使用angular自己的指令ng-class去变样式
$scope.setStyle = function(){
var a = $timeout(function(){
var radio = angular.element('.item-radio')[2];
angular.element(radio).addClass("select");
});
$scope.clientSideList = tempData;
}
示例代码下载地址:http://download.csdn.net/detail/superjunjin/9732862
可以参照上篇理解:http://www.jb51.cc/article/p-bcpyyxzk-bqa.html