Hallo,
ich habe ein mittelgroßes Problem mit einem Flashmenü "Flash Dock". Unerklärlich ist für mich, dass das Flash sich im separaten Flashplayer problemlos abspielen lässt, einzeln aufgerufen im Explorer bisher auch nie Probleme bereitet hat, jedoch eingebunden in die Webseite zum Absturz des Browsers führt (beobachtet bei Internet Explorer 6 und teilweise auch 7).
Hier die betreffende Seite mit dem Menü:
Leider ist das swf für den Dateiupload hier zu klein.
Leider bin ich mit diesem Problem vollkommen überfordert, also vielleicht könnt ihr mir weiterhelfen. Würde mich sehr freuen.
Hier noch der AS-Code:
onClipEvent(load){
_quality = "BEST";
var margin = 2; // tray margin
var min = 40; // icon size at its smallest
var max = 80; // icon size at its largest
var span = 2.5 * min; // radius of influence
var spacing = min + 1; // icon spacing
var n = 11; // number of icons
var speed = 0.15;
var _MC = Math.cos;
var _MS = Math.sin;
var _s = max - min;
var state = 0;
var piSpan = Math.PI / span;
var center = new Array();
for(i = 1; i <= n; i++){
this[i]._y = - margin;
center[i] = (2 * i - n - 1) * spacing / 2;
}
tray._height = min + 2 * margin;
this._alpha = 0;
}
onClipEvent(enterFrame){
if(this._alpha < 100) this._alpha += 10;
if (state == 0 state == 1) temp = false; else temp = true;
if(inside) state = Math.min(1, state + 0.2); else state = Math.max(0, state - 0.2);
if(x != _xmouse y != _ymouse
temp) {
var x = _xmouse;
var y = _ymouse;
var x1 = tray._x;
var x2 = x1 + tray._width;
if(!temp){
if( x < x1 x > x2
Math.abs(y) > altitude ) inside = false; else inside = true;
}
var altitude = min + 2 * margin + _s * state;
for(i = 1; i <= n; i++){
lo = center[i] - state * span;
hi = center[i] + state * span;
if(x <= lo) iX = hi; // mouse on the left, icon to the right
if(x >= hi) iX = lo; // mouse on the right, icon to the left
if(x > lo && x < hi) { // icon is influenced by mouse
fi = piSpan * (hi - x); // 0..2pi
cfi = _MC(fi / 2); // 1..-1
sfi = _MS(fi) / 20; // horizontal compensation
iX = center[i] - state * span * (cfi + sfi); // centrum ± span
iSize = _s * (1 - cfi * cfi); // icon resize
}
else iSize = 0;
_scale = 100 * (min + state * iSize)/128;
this[i]._xscale = this[i]._yscale = _scale;
this[i]._x = iX;
}
tray._width = this[n]._x - this[1]._x + this[1]._width/2 + this[n]._width/2 + 2 * margin;
tray._x = this[1]._x - this[1]._width/2 - margin;
}
}