исследовал глубже, потратил 3,5 часа где-то на поиски лечения. Надо заменить if (!this.check(arguments.callee, properties)) return this;
на if (!this.check(this.start, properties)) return this;
в Fx.Morph::start
вместо var li = new Element('li'); li.set('text', option.get('text') ); li.inject( this.selectbox ); li.setProperty('index', option.index);
можно писать var li = new Element('li') .set('text', option.get('text') ) .inject( this.selectbox ) .setProperty('index', option.index);
if (!this.check(arguments.callee, properties)) return this;на
if (!this.check(this.start, properties)) return this;в Fx.Morph::start
this.parent undefined после первого этапа анимации. Возможно баг с Class Extends, глубже пока не смотрел в чём причина.
код из mootools, для safari2 нужен innerText
this.currentElement = li;this.currentElement.addClass('selected');можно
this.currentElement=li.addClass('selected');var li = new Element('li');li.set('text', option.get('text') );li.inject( this.selectbox );li.setProperty('index', option.index);можно писать
var li = new Element('li').set('text', option.get('text') ).inject( this.selectbox ).setProperty('index', option.index);new Event(e),eуже расширен спомощьюnew Event, это происходит автоматически.