비

파일업로드시 미디어 첨부파일 미리보기

· 2024-10-02 (수) 06:59:53 · 4371 · 12

 

파일업로드시 이미지, mp3음원, mp4동영상 이 세가지 경우의 미리보기 기능입니다.

input 의 name 과 action 그리고 submit 설정은 본인의 입맛대로 구성하세요.

 

1. 이미지 - jpg, gif, png

 

[code]

<input id="file" type="file" accept=".jpg,.gif,.png"> 
<div id="preview"></div>


<script>
document.querySelector("#file").addEventListener("change", () => {
    reader = new FileReader();
    reader.addEventListener("load", (event) => {
        document.querySelector("#preview").innerHTML = "<img src='" + event.target.result + "'>"; 
    });
    reader.readAsDataURL(document.querySelector("#file").files[0]);
});
</script>

[/code]

 

3717943588_1727819415.4345.png

 

------------------------------

 

2, 음원 - mp3

 

[code]

<input id="file" type="file" accept=".mp3"> 
<div id="preview"></div>


<script>
document.querySelector("#file").addEventListener("change", () => {
    reader = new FileReader();
    reader.addEventListener("load", (event) => {
        document.querySelector("#preview").innerHTML = "<audio src='" + event.target.result + "' autoplay loop controls></audio>"; 
    });
    reader.readAsDataURL(document.querySelector("#file").files[0]);
});
</script>

[/code]

 

3717943588_1727819539.5703.png

 

------------------------------

 

3. 동영상 - mp4

 

[code]

<input id="file" type="file" accept=".mp4"> 
<div id="preview"></div>


<script>
document.querySelector("#file").addEventListener("change", () => {
    reader = new FileReader();
    reader.addEventListener("load", (event) => {
        document.querySelector("#preview").innerHTML = "<video src='" + event.target.result + "' autoplay loop controls></video>"; 
    });
    reader.readAsDataURL(document.querySelector("#file").files[0]);
});
</script>

[/code]

 

3717943588_1727819634.4516.png

 

------------------------------

 

미리보기의 결과물들은 id 가 preview 라는 div 안에 들어갑니다.

그리고 위의 스샷은 css 가 적용되어 있지 않은 상태를 캡쳐한 것이니 css 를 먹이려면 아래처럼 하면 되겠습니다.

 

[code]

<style>

#preview img { 이미지 css; }

#preview audio { 음원 css; }

#preview video { 동영상 css; }

</style>

[/code]

|

댓글 12개

97c45e080c174d4e6b90f719285e8e29_1727840755_5721.png

아주 좋은 팁 감사 합니다. 잘 사용 하겠습니다.

2024-10-02 (수) 16:43:30

@들레아빠 

pdf 까지 같이 올리려하다가 안드로이드에서는 역시 예상했던대로 열리지 않아서 나중에 따로 올릴 생각입니다.

동영상도 css 만 잘 만지면 썸네일 크기로 볼 수 있습니다.

@비타주리 pdf도 잘 되네요. 안드로이드 에서도 되고.. 감사 합니다.

2024-10-03 (목) 06:23:07

@들레아빠 

내 폰은 2018년 보급형이라 안드로이드가 아니라  안드로메다네요.ㅜㅠ

수고하셨습니다 : )

2024-10-03 (목) 06:23:22

@예뜨락 

감사합니다. 늘 하던 것들인데 혹여나 해서 올려 봤어요

2024-10-03 (목) 09:30:48

감사합니다 ^^

2024-10-03 (목) 09:57:30

@민트다이어리 감사합니다.

감사합니다.

2024-10-12 (토) 23:52:59

@써맨 감사합니다 

2024-10-12 (토) 10:18:42

감사합니다.

2024-10-12 (토) 23:53:11

@디자이너22 감사합니다 

댓글을 작성하시려면 로그인이 필요합니다.

그누보드5 팁자료실

2,788건
+
제목 글쓴이 날짜 조회
24-10-22 조회 4,361
24-10-21 조회 4,047
24-10-20 조회 4,396
24-10-17 조회 4,778
24-10-15 조회 3,642
24-10-14 조회 3,712
24-10-14 조회 3,329
24-10-13 조회 3,708
24-10-11 조회 3,938
24-10-09 조회 3,912
24-10-08 조회 3,870
24-10-07 조회 4,176
24-10-07 조회 3,614
24-10-07 조회 4,217
24-10-07 조회 6,398
24-10-02 조회 4,372
24-10-01 조회 3,690
24-10-01 조회 3,940
24-09-30 조회 4,168
24-09-28 조회 3,892
24-09-26 조회 3,988
24-09-25 조회 3,942
24-09-24 조회 3,345
24-09-21 조회 3,824
24-09-19 조회 4,559
24-09-09 조회 3,847
24-09-04 조회 3,712
24-09-04 조회 4,115
24-08-31 조회 4,029
24-08-31 조회 3,994