Во-первых, вы вызываете функцию foo до ее фактического определения. Ценность бла там еще не определена. Но это уже в глобальном масштабе, если это то, что вы имели в виду под поднятым телом.
Второе - foo фактически определено, потому что все объявления var
и function
определяются до выполнения на этапе предварительной обработки. Таким образом, в строке с foo()
, foo определена, но не инициализирована, потому что она инициализируется при условии, которое еще предстоит обработать.
Кроме того, то, что вы пытаетесь сделать, является плохой практикой, это приведет к ошибке при предварительной обработке с объявлением "use strict";
сверху
Попробуйте это
textArea.selectionBeginIndex = textArea.length;
textArea.selectionEndIndex = textArea.length;
Я полагаю, что можно непосредственно установить полосу прокрутки текстовой области с
verticalScrollPosition : Number
textArea.verticalScrollPosition(i);
Чтобы установить курсор в любой позиции в textArea, все, что вам нужно сделать, это
textArea.setSelection (beginIndex, endIndex);
если вы установите beginIndex и endIndex на то же значение (в вашем случае textArea.text.length) каретка будет помещена в эту позицию. Если вы установите для него другие значения, текст в этом диапазоне будет выделен.
@Paul Stewart verticalScrollPosition - это свойство, а не метод, поэтому его нужно использовать аналогично полю, например:
var newPosition:NUmber = 1;
textArea.verticalScrollPosition = newPosition;
Преимущество его использования перед selectionBeginIndex/selectionEndIndex в том, что не нужно устанавливать foucus.