패치문제 하나의 js파일만 만들고 여러개의 플래쉬무비 해결하는 방법
지지온
2012.06.11 22:02:21
출처:
패치문제 하나의 js파일만 만들고 여러개의 플래쉬무비 해결하는 방법
어제 열심히 삽질한후 저같은 경우는 이렇게 해결했습니다.
이 방법은 플래쉬각 각 서브페이지별로 몇개가 들어가든 상관없이 하나의 js파일만 가지고 해결할수 있습니다.
1. 먼저 아래와 같은 내용으로 js파일을 만듭니다.
function ShowFlash(url, width, height){
document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="' + width + '" height="' + height + '" VIEWASTEXT>');
document.write('<param name="movie" value="' + url + '">');
document.write('<param name="quality" value="high">');
document.write('<param name="wmode" value="window">');
document.write('<embed src="' + url + '" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="' + width + '" height="' + height + '"></embed>');
document.write('</object>');
}
위의 소스를 aa.js파일로 저장한후 상위폴더에 위치해 놓습니다.
2. 플래쉬가 삽입되는 각 서브페이지마다 아래와 같이 js파일을 불러오는 소스를 삽입합니다.
<script src="../aa.js" language="JavaScript"></script>
3. 플래쉬 파일이 있던 위치의 소스를 다음과 같이 바꿉니다.
예를 들어 아래와 같이 <td>와 </td>사이에 플래쉬파일이 위치해 있었다면 이런식으로 바꿉니다.
<td >
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="825" height="104">
<param name="movie" value="../flash/sub_main06.swf">
<param name="quality" value="high">
<PARAM NAME="wmode" VALUE="transparent">
<embed src="../flash/sub_main06.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="825" height="104"></embed></object>
</td>
위 소스를
<td > <script language="javascript"> ShowFlash('../flash/sub_main06.swf', 825, 104)</script></td>
이렇게 바꿉니다. 플래쉬파일경로, 플래쉬무비가로사이즈,세로사이즈 이렇게 세가지를 바꿔주면서 원래 플래쉬무비가 삽입되었던 자리를 스크립트 소스로 바꿔줍니다.
어떤분이 투명플래쉬에는 어떻게 적용하냐고 물으시던데요.
VALUE="transparent" 이 부분이 투명부분입니다.
js파일 첨부하겠습니다.
js파일을 각각 생성하는 방법보다는 간단하지만 플래쉬무비가 들어있던 부분은 어차피 다 손대야 하는군요. 드림위버에서 Ctrl+F에서 폴더 지정하여 소스 바꾸기를 이용하면 좀 더 빨리 바꿀수 있겠지요. 그럼 도움이 되셨기를^^