我有一個實現就地編輯的指令。在其link
功能我有一個設想,當編輯接通將焦點設置文本框的手錶:將焦點設置爲角度指令中的textarea
$scope.$watch('view.enabled', function(value) {
if (value) {
var element = $element.find('input') || $element.find('textarea');
var input = element && element[0];
if (input) {
$timeout(function() {
input.focus()
});
}
}
});
指令可以實例或者一個input
元素,或textarea
取決於參數。問題是在textarea
元素上調用focus()
不會爲其設置焦點。對於input
元素,它確實設置了焦點。
這是plnkr。請幫忙。
編輯:使用autofocus
屬性在HTML中textarea
使它獲得焦點,但我還是不明白,爲什麼我不能做到這一點編程。
我覺得自己很蠢。當然是。 DOM中有兩個元素...需要檢查可見性或根據模式查找特定的標記名稱。謝謝! – akonsu
@akonsu:一個誠實的錯誤;) – user13500