всем спасибо, отбой.
Проблема НЕ скрола таки связана с "потерей" фокуса. Но фокус удалось вернуть без лишних телодвижений и джаваскриптерора только на элемент <A> по this, т.е.:
Код:
<script>
var act = 0;
var targ;
function bla(el){
if(!act){
… /* здесь идет назначение display:block и куча остальной обработки */
targ = el;
act = 1;
} else {
… /* здесь идет назначение display:none и куча остальной обработки */
targ.focus();
targ.blur();
act = 0;
}
}
</script>
<a href="#" onclick="bla(this);return false;"><img …></a>
targ.blur(); сделан сугубо для снятия фокусной обводки, не принципиально. Но такого "дергания" оказалось достаточно для возобновления работы колеса прокрутки в мозилле.
На img фокус назначить не удалось. Но чисто теоретически мне интересно, почему фокус отработал только на <A>, хотя согласно стандартам DOM Level 1 он может быть назначен даже <TABLE>, не говоря о картинках.
Поэтому от <img src=… onclick="bla(this);"> пришлось отказаться.
Самое интересное: куда в таком случае (см.первый пост) девается фокус вообще? Сдается мне, таки дело в TABINDEX-ах, раздаваемых самими броузерами...