通过AngularJS做项目的时候,特别是表单,需要聚焦,这次就通过AngularJS的指令实现input的聚焦。
html代码:
<div ng-app="myApp">
<input type="text" set-Focus>
</div>
AngularJS指令的实现代码:
myApp.directive('setFocus', function($timeout, $parse) {
return {
link: function(scope, element, attr) {
var model = $parse(attr.uiFocus);
scope.$watch(model, function(value) {
if (value === true) {
$timeout(function() {
element[0].focus();
});
}
});
element.bind('blur', function() {
scope.$apply(model.assign(scope, false));
});
}
};
});
其实还是有很多种方法实现,童鞋们开动脑筋呀,只要明白原理和思路都不是问题的。
网友评论