我使用angular创建了一个单页应用程序(多个)视图,可以加载不同的页面内容。我希望在使用角度脚本时为所有屏幕应用初始焦点,而不是在每个页面表单元素中使用自动焦点属性。
有没有办法做到这一点?
和
我们如何知道角度视图(DOM)是否已完全加载?
答案 0 :(得分:5)
在MainCtrl中,您可以在加载角度视图时监听事件。
angular.module('app', [])
.controller('Controller', function($scope) {
angular.element(document).ready(function() {
$('form').find('input[type=text],textarea,select').filter(':visible:first').focus();
});
})
.controller('childController', function($scope) {
})

<!DOCTYPE html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script src="script.js"></script>
</head>
<body ng-app="app">
<div ng-controller="Controller">
<div>
<div ng-controller="childController">
<form name="myForm" id="myForm">
<label>Field1</label>
<input type="text" ng-model="first" ng-required="true" />
<br>
<label>Field2</label>
<input type="text" ng-model="second" ng-required="is_mobile" />
</form>
</div>
</div>
<br>
</div>
</body>
</html>
&#13;