2016-08-30 5 views
-1

플래시 게임에 문제가 있습니다. Firefox에서 실행해야하는 웹 페이지의 iframe에 구현해야합니다. 게임 자체는 swfobject 라이브러리로 플래시 객체를로드하는 자체 웹 페이지입니다. Firefox에서 직접 게임을 열면로드되고 재생됩니다. Developer-Tools를 열면 게임 비디오가 숨겨지고 흰색 페이지 만 보입니다. 음악이 아직 실행 중입니다.왜 내 플래시 개체가 올바르게 표시되지 않습니까?

이상한 행동은 body 태그를 클릭하면 게임이 보이지 않는다는 것입니다. 헤더 태그를 클릭하면 게임이 표시됩니다. iframe에서 게임을 열면 개발자 도구가 열려있을 때처럼 보이지 않습니다.

나는 완벽하게로드되는 다른 게임이 있습니다. 이들의 차이점은 wmode입니다. 작동하지 않는 게임은 wmode "gpu"를 사용합니다. 다른 사람들은 "투명하다". 그러나 Stage3D 등을 사용하기 때문에 게임 자체에 wmode gpu 또는 direct가 필요합니다.

iframe은 각도 재료 라이브러리의 md 대화 상자에서로드됩니다. 또한 AngularJS를 사용합니다.

게임이 Chrome에서 완벽하게 작동합니다.

누군가이 문제를 해결하는 방법을 알고 있습니까?

이것은 게임의 index.html에 있습니다. vm.urlD이 게임 index.html을위한 구문 분석 된 URL이

<iframe id="iframe" scrolling="no"></iframe> 

$('#iframe').attr('src',vm.urlD); 

:

<script type="text/javascript"> 
     // For version detection, set to min. required Flash Player version, or 0 (or 0.0.0), for no version detection. 
     var swfVersionStr = "11.1.0"; 
     // To use express install, set to playerProductInstall.swf, otherwise the empty string. 
     var xiSwfUrlStr = "playerProductInstall.swf"; 
     var flashvars = {}; 
     var params = {}; 
     params.quality = "high"; 
     params.bgcolor = "#ffffff"; 
     params.allowscriptaccess = "sameDomain"; 
     params.allowfullscreen = "true"; 
     params.wmode = "gpu"; 
     //params.scale = "noborder"; 
     var attributes = {}; 
     attributes.id = "Flash"; 
     attributes.name = "Flash"; 
     attributes.align = "middle"; 
     swfobject.embedSWF(
      "flash.swf", "flashContent", 
      "1180", "660", 
      swfVersionStr, xiSwfUrlStr, 
      flashvars, params, attributes); 
     // JavaScript enabled so display the flashContent div in case it is not replaced with a swf object. 
     //swfobject.createCSS("#flashContent", "display:block;text-align:left;"); 
    </script> 

index.html을

는로드지고 있습니다.

CSS를 sytles은 iframe :

iframe{ 
left: 0; 
top: 0; 
right: 0; 
bottom: 0; 
margin: auto; 
height: 100%; 
width: 100%; 
overflow: hidden; 
border: none;} 
+0

우연히 Starling을 게임 엔진으로 사용하고 있습니까? –

+0

그게 아니라 ...이 게임은 혼자서 개발 된 것이 아닙니다. – Peter

+0

경험에 비추어 볼 때 Stage3D로 flashcontainer 크기를 조정하면 설명하는 증상이 발생할 수 있습니다. 그러나 플래시 클라이언트 외부에서는이를 수정할 수 없습니다. –

답변

0

당신은 iframe의 크기를 설정 했습니까? 때로는 컨테이너 요소의 크기를 고정하지 않으면 일부 브라우저에서 플래시 포함이 제대로 작동하지 않을 수 있습니다. 브라우저의 크기를 변경 (개발자 도구 열기 또는 창 크기 조정 등) 할 때까지 작동합니다.

예 :

<iframe width="500px" height="500px" src="..."></iframe> 

PS : 당신은 당신이 정확한 답변을 얻을 수있는 사람에 대해 수행 한 코드를 표시해야합니다.

+0

을 가지고 놀 수 있도록 요청할 수 있습니다. 죄송합니다. 코드를 추가했습니다. 보시다시피 너비와 높이는 100 %입니다. 고정 픽셀로 설정하면 여전히 실행되지 않습니다 ... – Peter