본문 바로가기
프로그래밍/[javascript] 자바스크립트

[JavaScript] 텍스트 복사 예제 소스

by GenieIT* 2024. 11. 29.
728x90
728x90
반응형

 

1. 개요

  • 클립보드 API를 사용해서 자바스크립트로 간단하게 텍스트 복사하는 방법에 대해 소개하겠습니다.
  • 예제 소스를 사용해서 여기 블로그에도 바로 테스트할 수 있도록 마지막에 구현해 놓도록 하겠습니다.

 


 

2. 주요 코드 설명

  • navigator.clipboard.writeText() : 클립보드 API로 텍스트를 복사합니다. 최신 브라우저에서 지원됩니다.
  • select()와 setSelectionRange() : input 요소의 내용을 선택하는 데 사용되며, 모바일 환경에서도 복사를 지원합니다.
  • catch() 블록 : 복사 실패 시 오류를 처리할 수 있습니다.

 


 

3. 예제 소스

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>복사하기 예제</title>
</head>
<body>
  <input type="text" id="textToCopy" value="오늘도 행복하세요. (복사 테스트)" readonly>
  <button id="copyButton">복사하기</button>

  <script>
    document.getElementById('copyButton').addEventListener('click', function() {
      const textToCopy = document.getElementById('textToCopy');
      
      // 텍스트 선택
      textToCopy.select();
      textToCopy.setSelectionRange(0, 99999); // 모바일 지원
      
      // 클립보드에 복사
      navigator.clipboard.writeText(textToCopy.value)
        .then(() => {
          alert('텍스트가 복사되었습니다!');
        })
        .catch(err => {
          console.error('복사 실패:', err);
        });
    });
  </script>
</body>
</html>

 


 

4. 예제 소스 실행 테스트

 


 

 

 

 

 

728x90