PDA

Просмотр полной версии : flash + IE, flash + Firefox, flash + Opera,


f_inch
15.03.2007, 19:29
по разному вычисляются координаты в фоке и опере.... почему то...
В IE все нормально и корректно... кто сталкивался?

var c:XML = new XML(blink);
txtModule.jL.loadMovie(c.firstChild.attributes.src);
txtModule.onEnterFrame = function(){
z=Math.floor(txtModule.jL.getBytesLoaded()/txtModule.jL.getBytesTotal()*100);
txtModule.mainTxt.htmlText = "<p align='center'>Загрузка изображения: "+z+"%</p>";
if(z>=100) {
txtModule.jL._x = (txtModule._width/2) - (txtModule.jL._width/2);
txtModule.jL._y = (txtModule._height/2) - (txtModule.jL._height/2);
txtModule.mainTxt.htmlText='';
delete txtModule.onEnterFrame;
}

etc
15.03.2007, 20:03
Использовать нужно MovieClipLoader для загрузки изображений. То, что процент больше или равен 100, вовсе не значит, что изображение уже показано в клипе и его ширина и высота положительна.

з.Ы. Очень ужасный код.

f_inch
15.03.2007, 20:10
оно уже показано, но не по середине экрана... в IE все четко...

etc
15.03.2007, 20:28
Прочтите второй пост ещё раз и вдумчиво, применительно к своему коду.

f_inch
15.03.2007, 22:19
т.е. хочешь сказать что без MovieClipLoader никак не обойтись... да?

etc
15.03.2007, 22:25
А что, он страшный?
Не, можно просто проверять, является ли ширина/высота больше нуля, а уж потом позиционировать. Но это всё как-то кривенько и на костыльках.

iNils
15.03.2007, 23:22
Дополнение:
(txtModule._width/2) - (txtModule.jL._width/2);этот код выполняет три математических действия, два деления и вычитание.
(txtModule._width - txtModule.jL._width)/2;
Этот код делает тоже самое, но действия уже два, вычитание и деление.