I'd like to put the focus on an input after it's shown with ng-show. However, this requires a jquery call to be made after the $digest cycle. Does anyone know how to run code after the item is shown, without resorting to setTimeout(), or some such thing? Here's an example plunk of the issue: http://plnkr.co/edit/synSIP?p=preview
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
You can write a simple directive , dont need jquery :
yourApp.directive('focusme',function(){
return function(scope,elem,att){
elem.focus();
}
});
and You can use it like this :
<input type="text" focusme>
回答2:
If you want the input to be automatically focused when it is shown use the html5 autofocus attribute: