2011-10-19 5 views
0

파이어 폭스 (파이어 폭스 4, 7), 아무것도 표시되지 않습니다 작동하지 않습니다 내 웹 사이트도하지 대체 내용이 플래시 웹 사이트 버그 (하지만 IE6에서 작동!)

및 IE9와

이 문제가 내용은 ... 페이지 상단에 압축 (하지만 IE6에서 작동합니다!)

과 HTML은입니다 :

<!DOCTYPE html> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
     <title></title> 

     <link rel="stylesheet" type="text/css" media="all" href="style.css" /> 
     <script type="text/javascript" src="jquery-1.5.1.min.js"></script> 
     <script type="text/javascript" src="jq.js"></script> 
     <script type="text/javascript" src="swfobject.js"></script> 
     <script type="text/javascript"> 
      swfobject.registerObject("myId", "9.0.115", "expressInstall.swf"); 
     </script> 
    </head> 
    <body> 

    <div id="flash"> 

    <object id="myId" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="100%" height="100%"> 
     <param name="movie" value="ombre.swf" /> 
     <!--[if !IE]>--> 
     <object type="application/x-shockwave-flash" data="ombre.swf" width="100%" height="100%"> 
     <!--<![endif]--> 
      <p>alternative content</p> 
     <!--[if !IE]>--> 
     </object> 
     <!--<![endif]--> 
     </object> 

     </div> 

    </body> 
    </head> 
</html> 

와 CSS :

body { 
    width:100%; height:100%; margin:0; background:white; overflow:hidden; 
} 

"높이"를 100 %로 설정하면 문제가되는 것 같지만 그 밖에도 무엇을 넣을 수 있습니까? 당신은 왜 당신이 그것을 사용하지 않는 데 SWFObject를 사용하고 있기 때문에 웹 사이트는 ... 크롬, 사파리, IE6에

감사

답변

2

작동 실제
당신은 훨씬 더 될 다음 코드 예제를 찾을 수 내장 브라우저 호환.

<script type="text/javascript" src="swfobject.js"></script> 
<script type="text/javascript"> 
    function loaded() { 
    var flashvars={}, params={}, attributes={}, tmp, version, width, height, container, flashObj; 

    flashvars.UserId = "23061"; 

    params.menu = "true"; 
    params.quality = "high"; 
    params.bgcolor = "#869ca7"; 
    params.allowscriptaccess = "always"; 
    params.allownetworking = "all"; 

    attributes.id = "myId"; 
    attributes.name = "myId"; 
    attributes.align = "middle"; 
    attributes.allowscriptaccess = "always"; 
    attributes.allownetworking = "all"; 

    tmp = "expressInstall.swf"; 
    version = "9.0.115"; 
    width = "100%"; 
    height = "100%"; 
    container = "replaceMe"; 
    flashObj = "myId.swf"; 

    swfobject.embedSWF(flashObj, container, width, height, version, tmp, flashvars, params, attributes); 
    } 

</script> 

    <body onLoad="loaded()" > 
    <div id="replaceMe">Loading content.</div> 
    </body> 

[EDIT]

<style> 
html, body{ 
    width:100%; 
    height:100%; 
    margin:0; 
    background:white; 
    overflow:hidden; 
} 
</style> 
+0

감사합니다. 정말로 도움을 주시면 감사하겠습니다. 코드를 사용하여 index.html을 업데이트했으며 다른 브라우저에서도 작동하지만 파이어 폭스에서는 작동하지 않습니다 (현재 마지막 버전 인 7 일). 방화범으로 내 URL을 좀 봐 주시겠습니까? 또한 ie9, 상단에 내 콘텐츠를 "압축"가지고있어, 나는 크롬, 사파리 등 내가 index.html에 "CSS는"줄을 주석에 동일한 일이있어 알아 냈어 : if 내가 코멘트를 제거하고 CSS를 보자, 그것은 ie9를 제외하고 잘 작동 ... 어떤 생각? 고마워요. – Paul

+1

여기 FF7이 있고 테스트 페이지에서 인라인으로 설정 한 바디 스타일을 실행했습니다. 그리고 전혀 문제가 없어서 그렇게 생각하지 않습니다. 제 생각에는 당신도 똑같은 일을해야합니다. CCS 페이지를 전혀로드하지 마십시오. 게시 한 코드를 추가하고 실행하여 결과를 확인하십시오. 나는 당신이 어딘가 CSS를 무시하는 스타일을 가지고 있다고 생각하고있다. 난 그냥 짐을 낄 수 없다. –

+0

오우 맨! 나는 2 개의 다른 공개 토론에이 질문을 질문하고 응답은 일하지 않았다! 너는 주인이야! 고마워, 그런 구제, 정말 고마워! ;-) 편집 : 그래, 나는 지금 PC에 없기 때문에 ie9에 시도하지 않았지만 파이어 폭스에서 작동한다. 이것이 ie9에서 똑같이하기를 바란다!;-) 내가 할 수있을 때 해보 겠어, 고마워! – Paul

2

이것을 해보세요 I 최근 이와 같은 문제가 있고, I는 100 % 높이와 폭을 설정했고, 파이어 폭스 IE9는 할 SWF 죽겠 것이라고 표시 할 것이다 페이지 높이의 상단 : 100 픽셀 또는 그 이상. 나는 JavaScript, 실제로는 jQuery (사용 가능했기 때문에)로 고쳤다.

크기를 조정할 때 기본적으로 FF는 % 값을 좋아하지 않으며 IE9에는 다른 문제가있다. 정적 값을 추가하면 문제가 없습니다. 그러나 우리는 정적 인 가치관을 원하지 않습니다.

어쨌든, 저에게 플래시 태그를 쓰고 화면 크기에 따라 정적 값을 삽입하도록 자바 스크립트에 알리는 것으로 문제를 해결했습니다. 내 영화의 비율은 24X11 있었기 때문에

<script type="text/javascript"> 
    document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="' + $(window).width() + '" height="' + Math.round(($(window).width()*11)/24) + '" id="YourMovieID" align="middle"> 
    <param name="movie" value="YourMovie.swf"/> 
    <param name="wmode" value="opaque" /> 
    <param name="scale" value="exactfit" /> 
    <!--[if !IE]>--> 
    <object type="application/x-shockwave-flash" data="YourMovie.swf" width="' + $(window).width() + '" height="' + Math.round(($(window).width()*11)/24) + '" > 
    <param name="movie" value="YourMovie.swf"/> 
    <param name="wmode" value="opaque" /> 
    <param name="scale" value="exactfit" /> 
    <!--<![endif]--> 
    <!--[if !IE]>--></object> 
    <!--<![endif]--> 
    </object>') 
    </script> 

나는 다음 Math.round(($(window).width()*11)/24) 화면의 폭을 얻을 수 $(window).width()을 사용합니다.

다시 jQ 해결책을 사용할 수 있었기 때문에 screen.width를 사용하여 얻을 수있었습니다. 내가 간격을 두었을지라도 모든 일을 한 줄로 압축해야 할 수도 있습니다. 그래서 당신은 무슨 일이 일어나고 있는지 볼 수 있습니다.

관련 문제