플래시를 보이게 하도록 허용해놨는데요. 소리를 안나오게 할 수 있을지요.

플래시를 보이게 하도록 허용해놨는데요. 소리를 안나오게 할 수 있을지요.

QA

플래시를 보이게 하도록 허용해놨는데요. 소리를 안나오게 할 수 있을지요.

본문

플래시를 첨부하면 사진을 올릴때와 마찬가지로 본문에 바로 보이도록 허용해놨습니다.

플래시 게임게시판을 만들어서 운영하고 있습니다.

참고로 플래시를 본문에 나타내기 위해 제가 수정한 내용입니다.

 

lib/common.lib.php 파일 수정 : 아래의 코드의 주석을 해제하였음



/*
    // 110106 : FLASH XSS 공격으로 인하여 코드 자체를 막음
    else if (preg_match("/\.($config[cf_flash_extension])$/i", $file))
        //return "<embed src='$g4[path]/data/file/$board[bo_table]/$file' $attr></embed>";
       return "<script>doc_write(flash_movie('$g4[path]/data/file/$board[bo_table]/$file', '_g4_{$ids}', '$width', '$height', 'transparent'));</script>";

*/​

그런데 문제가 있는데요.

일일이 스크린샷을 첨부하기 귀찮아서 게시글 리스트에서도 썸네일대신 플래시가 작게 보이게 해놨는데요.

이렇게 했더니 게시판 목록에서 모든 플래시의 사운드가 합쳐져 나오는 현상이 있습니다. (당연한거겠지요;;)

 

인터넷에서 플래시를 불러올때에 embed 속성을 주어 소리를 끄는법을 찾았는데요.

본문을 봤을때만 소리를 나타내고 목록의 경우엔 소리를 끄는것은 어떻게 해야 할지요.


이 질문에 댓글 쓰기 :

답변 2

swf 볼륨은 그런식으로 컨트롤이 안될텐데요?

그런게 가능하다면 목록은 list.skin.php 이고 글보기는 view.skin.php 이니

list.skin.php 에서만 플래시 파일 불러오는 곳에 속성을 주시면 될 것 같네요. 

둘다 같은 코드로 불러오거든요.
<script>doc_write(flash_movie('$g4[path]/data/file/$board[bo_table]/$file', '_g4_{$ids}', '$width', '$height', 'transparent'));</script>
둘다 플래시 불러오는곳이 저렇습니다.

플래시 불러오는 자스 스크립트 flash_movie​ 를 수정하셔야 합니다.

/js/common.js 파일에서 flash_movie 함수를 찾으셔서

transparent 값뒤에 volume 인자를 하나 더 주셔서 사용하시도록 수정하시고..

리스트스킨에서는 volume 값으로 0 을 전달,

뷰스킨에서는 1을 전달하면 되겠지요.

 

댓글 감사합니다.

  function flash_movie(src, ids, width, height, wmode)
    {
        var wh = "";
        if (parseInt(width) && parseInt(height))
            wh = " width='"+width+"' height='"+height+"' ";
        return "<object classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0' "+wh+" id="+ids+"><param name=wmode value="+wmode+"><param name=movie value="+src+"><param name=quality value=high><embed src="+src+" quality=high wmode="+wmode+" type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/shockwave/download/index.cgi?p1_prod_version=shockwaveflash' "+wh+"></embed></object>";
    }
<input type="checkbox" id="" value="" />
    function obj_movie(src, ids, width, height, autostart)
    {
        var wh = "";
        if (parseInt(width) && parseInt(height))
            wh = " width='"+width+"' height='"+height+"' ";
        if (!autostart) autostart = false;
        return "<embed src='"+src+"' "+wh+" autostart='"+autostart+"'></embed>";
    }

    function doc_write(cont)
    {
        document.write(cont);
    }
}


위와 같이 되어있던데 어떻게 수정하면 될지요.

그리고 이렇게 수정한 후에 리스트에서는 볼륨0으로 본문에는 1로 전달하면 된다고 하셨는데 그 방법을 자세히 말씀해 주시면 안될까요???

답변을 작성하시기 전에 로그인 해주세요.
전체 49
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT