自分の質問に答えるとは思っていませんでしたが、ここにあります。htmlText が前菜だった可能性があります。スクロールバーのジッターは、動的に生成されたコンテンツ ウィンドウがクリックされてからフォーカスが失われるまでの間に発生するため、現在の位置と、クリック イベントでスクロールバーが一番下にあるかどうかをキャプチャし、その情報をフォーカス イベントに渡します。displayWindow は、動的に生成されたコンテンツを持つものです。
私は AS3 に比較的慣れていないので、これが適切でない場合はお知らせください。
displayWindow.addEventListener(MouseEvent.ROLL_OUT, handleClick);
function handleClick(event:MouseEvent):void
{
//here, user has clicked output window
var currentPosition = displayWindow.verticalScrollPosition;
var atTheBottom:Boolean = (currentPosition == displayWindow.maxVerticalScrollPosition);
var focusAdded:Boolean = false;
displayWindow.addEventListener(FocusEvent.FOCUS_OUT,
function handy() {
//here, user has clicked away from output window
if (!focusAdded) {
if (atTheBottom)
displayWindow.verticalScrollPosition = displayWindow.maxVerticalScrollPosition;
else
displayWindow.verticalScrollPosition = currentPosition;
focusAdded = true;
} else {
displayWindow.removeEventListener(FocusEvent.FOCUS_OUT, handy);
focusAdded = false;
}
}
);
}