2009-07-22 6 views
1

나는 매우 간단한 작업이어야하는 것을 시도하는 진짜 악몽이 있습니다. 정적 또는 독립 SWF 파일을 포함하면 ModX 기반 웹 사이트에서 정상적으로 나타납니다. 그러나 동적 인 SWF (XML 파일과 이미지 파일 등을 참조하는 SWF)에 관해서는 나는 전혀 나타나지 않을뿐입니다. 나는 페이지의 HEAD 부분에 다음 코드를 붙여 넣있는 플래시 메뉴 프로그램에 따르면 :ModX 기반 웹 페이지에 동적 SWF 파일을 삽입하려면 어떻게해야합니까?

<script type="text/javascript" src="swfobject.js"></script> <script type="text/javascript" src="flying.js"></script> 

다음 BODY 섹션에서 내가해야 (그 과정의 루트 디렉토리에 파일 포함) 이 붙여 넣기 :

<!-- Flash Menu Labs – www.flashmenulabs.com --> 
<div id="FlashMenuLabs" style="position:absolute; top:0px; padding-left:0px; z-index:0;"> 
    You need to upgrade your Flash Player or to allow javascript to enable Website menu. </br> 
    <a href="http://www.adobe.com/go/getflashplayer">Get Flash Player</a>    
</div> 
< script type="text/javascript"> 
// <![CDATA[ 
    var so = new SWFObject("menu.swf", "menu", "185", "440", "8", "#000000"); 
    so.addVariable("page _ code", "a _ b _ c"); 

    so.addParam("wmode", "transparent"); 
    so.addParam("scale", "noscale"); 
    so.addParam("salign", "TL"); 
    so.write("FlashMenuLabs"); 
// ]]> 
</script> 

작동하지 않습니다. 파일은 menu.swf이 참조되는 icpmenu_es (flash의 하위 폴더)이라는 폴더에 있습니다. 종속 파일 (XML, PNG 및 SWF 포함)은 menu_data이라는 하위 폴더에 있습니다. 두 개의 XML 파일 (open_menu_data.xmlmenu_data.xml)이 있으며 편집 할 수 없습니다.
은 그럼 여기 <EMBED> 경로를 시도했다 :

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="185" height="440"> <param name="base" value="http://www.ideal-country-property.com/"> <param name="movie" value="/flash/icpmenu_es/menu.swf"> <param name="id" value="ICPmenuES"> <param name="menu" value="false"> <param name="slalign" value="tl"> <param name="quality" value="high"> <param name="wmode" value="transparent"> <param name="scale" value="noscale"> <embed src="/flash/icpmenu_es/menu.swf" menu="false" quality="high" wmode="transparent" scale="noscale" width=185 height=440 type="application/x-shockwave-flash" id="ICPmenuES" salign="tl" base="http://www.ideal-country-property.com/" pluginspace="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"> </embed> </object>` 

중 하나가 작동하지 않습니다. 누구든지 올바른 방향으로 나를 가리킬 수 있다면 가장 감사하게 생각합니다. 다른 포럼에서는 사람들이 SWF에서 XML에 대한 참조를 편집하는 것을 보았지만 어디에서 볼 수 있는지 알 수 없습니다. 초보자 프로그래머가되는 것도 그리 도움이되지 않습니다!

+0

Google 그룹 SWFObject의 도움을 받아서 문제의 근본 원인을 발견했습니다. ModX에서는 "General"탭 아래에 페이지 이름이 영어인지 스페인어인지에 따라 "_en"또는 "_es"를 더한 "document 's alias"필드를 추가해야합니다. 그러면 별칭이 만들어집니다 이 경우 테스트 페이지의 별칭은 "test_es"이므로 http://www.ideal-country-property.com/es/test의 링크가 생성됩니다. SWF 파일이 JS 파일을 찾았지만 존재하지 않는 "ES"라는 폴더에서 XML 파일을 찾으려고합니다. – Stoffer

+0

그런데 Google 그룹스에서이 기록을 볼 수 있습니다 : http : // groups .google.co.kr/group/swfobject/browse_thread/thread/6bc280b258e4ecff/3b661c1ae996afd1 # 3b661c1ae996afd1 저희 ISP는 ModX를 이와 같이 (모든 부동산 클라이언트와 마찬가지로) 제공하므로 누구도이 서비스를 엉망으로 만들고 싶지 않습니다. 너무 많은. SWF가 XML 파일에 올바르게 액세스하고 가상 "ES"폴더에서 찾지 않는 방법이 필요합니다. 희망이 있습니다. 건배. 크리스. – Stoffer

답변

0

플래시 경로가 매우 까다로워 질 수 있습니다. 플래시 경로는 .swf가있는 곳이 아닌 .swf가 호출되는 HTML에 상대적입니다. 당신이 .html 중에서 같은에있는 경우 그래서, :

misite.com/news/article.html 그리고 난 여기에 "/anotherfolderinroot/test.swf"사용에서 .swf 파일을 호출하는 SWF는 내부 사용자의 상대 경로입니다 여전히 예를 들어, "인 data.xml"플래시 misite.com/news/data.xml 찾고있을 것 .swf 파일 내부에 절대 경로없이 영화 나 XML을로드, 그래서

을 misite.com/news/

플래시 보안 경고를 발생시키고 URL에 액세스 할 때 파일을로드 할 수없는 "http://www.mydomain.com/media/mymovie.swf"와 같은 .html 호출에 포함 된 도메인 이름을 사용하여 절대 경로를 사용하지 마십시오. www가없는 경우 'http://misite.com/news/article.html' 할 수있는 동안 이것을 무효화하십시오.

희망이 있습니다.

+0

감사 파블로. 그것은 트릭을했다. 너는 별이야. 살루 도스. – Stoffer

0

Apache 로그에 액세스 할 수 있습니까?

예전에 문제가 발생했는데 modx가 파일/폴더 권한 (예 : 그룹으로 쓰기 권한이있는 경우)이 만족스럽지 않으면 특정 콘텐츠가 표시되지 않으며 Apache 로그 만이 이에 대한 정보를 제공합니다 .

+0

죄송합니다. 그렇지 않습니다. 우리 ISP는 내가 아파치에 접근 할 수있게하는 것에 관해서는 상당히 엄격하다. – Stoffer

+0

사실, 게시 한 이래서 나는 문제의 원인을 알았지 만 해결책을 볼 수는 없습니다. 문제는 SWF 파일과 JS 파일에 대한 경로입니다. 작동 시키려면 작동하기 전에 HEAD 섹션에 ' href = "http://www.ideal-country-property.com/icpmenu_es/" "을 넣어야합니다. 문제는 우리 사이트가 다른 위치에서 실행되는 다른 스크립트를 가지고 있기 때문에 "menu.swf"가있는 특정 디렉토리로 BASE를 설정할 수 없다는 것입니다. 내가 이해할 수없는 것은 CDATA에 상대 경로를 삽입하는 것이 왜 작동하지 않는지입니다. 특수 코드를 삽입해야합니까? – Stoffer

관련 문제