PDA

Просмотр полной версии : stage.scaleMode в IE


Rivexe
09.01.2014, 15:18
Кто нибудь сталкивался с такой ситуацией?
В IE < 11, при установки stage.scaleMode = StageScaleMode.NO_SCALE, обнуляются значения размеров сцены:


public function Main()
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}

private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);

trace(stage.stageWidth + "-" + stage.stageHeight); // 800-600
stage.scaleMode = StageScaleMode.NO_SCALE;
trace(stage.stageWidth + "-" + stage.stageHeight); // 0-0
}


Причем раз на раз не приходится, 1 из 10 случаев выдает действительный результат.

alexcon314
09.01.2014, 15:45
А при чем тут IE?

Rivexe
09.01.2014, 16:03
Притом что флешка размещена на странице и баг воспроизводится в браузере, а именно в InternetExplorer.

silin
09.01.2014, 16:44
было что-то такое именно в IE и не только в NO_SCALE, а в любом режиме
перенос init() в следующий enterFrame плеера ( или просто setTimeout(init, 10)) решает вроде бы проблему, но деталей не знаю

Rivexe
09.01.2014, 20:33
Раньше была проблема в IE c ExternalInterface, тогда только setTimeout помог. В данной ситуации setTimeout через раз помогает и то только если поставить таймаут меньше 1000, при большее 1000 вроде все норм, но задержка критичная. Ладно и на этом спасибо.