찾다
웹 프론트엔드CSS 튜토리얼텍스트를 클립보드에 복사하는 방법

How to Copy Text to Clipboard

텍스트를 클립보드에 복사하는 것은 최신 웹 애플리케이션의 일반적인 요구 사항입니다. 많은 바닐라 JavaScript 솔루션이 존재하지만 오늘은 경량 라이브러리인 Clipboard.js와 간단한 툴팁 라이브러리인 Hint.css를 사용하여 우아한 복사 대상 솔루션을 만들어 보겠습니다. 클립보드 기능.


1단계: HTML 구조

HTML은 동일하게 유지됩니다. 여기에는 복사 아이콘 위로 마우스를 가져갈 때 도구 설명을 표시하는 Hint.css 스타일의 링크가 포함되어 있습니다.

<a href="#">



<ul>
<li>
<strong>class="hint hint-bottom"</strong> : Adds a bottom-aligned tooltip using Hint.css.</li>
<li>
<strong>data-hint="Copy link to clipboard"</strong> : The tooltip text.</li>
</ul>


<hr>

<h3>
  
  
  Step 2: JavaScript
</h3>

<p>Here’s the updated code in plain JavaScript:<br>
</p>

<pre class="brush:php;toolbar:false">// Select the clipboard control
const control = document.querySelector('.app-clipboard-link');

// Set the clipboard text
control.setAttribute('data-clipboard-text', 'https://google.com');

// Initialize Clipboard.js
const clipboard = new ClipboardJS(control, {
    text: (trigger) => trigger.getAttribute('data-clipboard-text'),
});

// Handle the success event
clipboard.on('success', (event) => {
    // Update the tooltip to show "Copied"
    control.setAttribute('data-hint', 'Copied');

    // Reset the tooltip after 3 seconds
    setTimeout(() => {
        control.setAttribute('data-hint', 'Copy link to clipboard');
    }, 3000);
});


2254개 무료 리소스 개발자를 위한!! ❤️ ?? (매일 업데이트)

1400개의 무료 HTML 템플릿

372개의 무료 뉴스 기사

72가지 무료 AI 프롬프트

333개의 무료 코드 라이브러리

Node, Nuxt, Vue 등을 위한 52개의 무료 코드 조각 및 상용구!

25개의 무료 오픈 소스 아이콘 라이브러리

dailysandbox.pro를 방문하여 보물 창고에 무료로 액세스하세요!


코드 설명

  • 이렇게 하면 data-clipboard-text 속성이 원하는 URL로 동적으로 설정됩니다.
  • 텍스트: 클릭한 요소에 대한 data-clipboard-text 속성 값을 반환하는 콜백 함수를 정의합니다.
  • 클립보드 작업이 성공하면 툴팁을 "복사됨"으로 업데이트합니다.
  • 3초 후에 툴팁 텍스트를 다시 "클립보드에 링크 복사"로 재설정합니다.

성공 이벤트 처리 :

clipboard.on('success', (event) => {
    control.setAttribute('data-hint', 'Copied');
    setTimeout(() => {
        control.setAttribute('data-hint', 'Copy link to clipboard');
    }, 3000);
});

Clipboard.js 초기화 :

const clipboard = new ClipboardJS(control, {
    text: (trigger) => trigger.getAttribute('data-clipboard-text'),
});

클립보드 텍스트 설정 :

control.setAttribute('data-clipboard-text', 'https://google.com');


이 접근 방식의 장점

  1. jQuery 종속성 없음 : 일반 JavaScript를 사용하여 솔루션이 가볍고 최신 웹 표준과 호환됩니다.
  2. Hint.css 통합 : 추가 JavaScript 없이 깔끔하고 시각적으로 매력적인 툴팁을 제공합니다.
  3. Clipboard.js 단순성 : 맞춤 로직 없이도 클립보드 상호 작용을 효율적으로 처리합니다.

결론

단 몇 줄의 일반 JavaScript와 Clipboard.js 및 Hint.css의 강력한 기능을 사용하여 깔끔하고 사용자 친화적인 클립보드로 복사 기능을 구현했습니다. 이 접근 방식은 기능과 우아함을 유지하면서 불필요한 종속성을 방지합니다.

이제 직접 시험해 보세요! 사용자는 이 기능의 단순성과 응답성을 높이 평가할 것입니다. ?

웹 개발에 대한 더 많은 팁을 보려면 DailySandbox를 확인하고 무료 뉴스레터에 가입하여 앞서 나가세요!

위 내용은 텍스트를 클립보드에 복사하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
마우스 움직임을 시뮬레이션합니다마우스 움직임을 시뮬레이션합니다Apr 22, 2025 am 11:45 AM

라이브 토크 나 수업 중에 대화식 애니메이션을 표시해야한다면 슬라이드와 상호 작용하기가 항상 쉽지 않다는 것을 알 수 있습니다.

Astro Actions 및 Fuse.js로 검색을 전원합니다Astro Actions 및 Fuse.js로 검색을 전원합니다Apr 22, 2025 am 11:41 AM

Astro를 사용하면 빌드 중에 대부분의 사이트를 생성 할 수 있지만 Fuse.js와 같은 것을 사용하여 검색 기능을 처리 할 수있는 작은 서버 측 코드가 있습니다. 이 데모에서는 퓨즈를 사용하여 개인 "북마크"세트를 검색합니다.

정의되지 않은 : 세 번째 부울 가치정의되지 않은 : 세 번째 부울 가치Apr 22, 2025 am 11:38 AM

문서가 저장되는 동안 Google 문서에서 볼 수있는 것과 유사한 프로젝트 중 하나에서 알림 메시지를 구현하고 싶었습니다. 다시 말해, a

제 3의 진술의 방어에서제 3의 진술의 방어에서Apr 22, 2025 am 11:25 AM

몇 달 전에 나는 해커 뉴스를 썼고 (하나와 마찬가지로) IF 문을 사용하지 않는 것에 대한 (현재 삭제 된) 기사를 가로 질러 달렸습니다. 이 아이디어를 처음 접한다면 (나처럼

다국어 번역에 웹 스피치 API 사용다국어 번역에 웹 스피치 API 사용Apr 22, 2025 am 11:23 AM

공상 과학 소설의 초기부터 우리는 우리와 대화하는 기계에 대해 환상을 가지고 있습니다. 오늘은 평범합니다. 그럼에도 불구하고 제작 기술

Jetpack Gutenberg 블록Jetpack Gutenberg 블록Apr 22, 2025 am 11:20 AM

Gutenberg가 핵심으로 풀려 났을 때를 기억합니다. 왜냐하면 나는 그날 WordCamp에 있었기 때문입니다. 지금은 몇 달이 지났으므로 점점 더 많은 것을 상상합니다.

VUE에서 재사용 가능한 페이지 매김 구성 요소 생성VUE에서 재사용 가능한 페이지 매김 구성 요소 생성Apr 22, 2025 am 11:17 AM

대부분의 웹 애플리케이션의 배후에있는 아이디어는 데이터베이스에서 데이터를 가져 와서 최상의 방법으로 사용자에게 제시하는 것입니다. 우리가 거기에서 데이터를 다룰 때

'Box Shadows'와 Clip-Path를 함께 사용합니다'Box Shadows'와 Clip-Path를 함께 사용합니다Apr 22, 2025 am 11:13 AM

#039;는 당신이 의미있는 것처럼 보일 수있는 상황에 대한 약간의 단계를 수행하자. 이것에서

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

mPDF

mPDF

mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

WebStorm Mac 버전

WebStorm Mac 버전

유용한 JavaScript 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

SublimeText3 Linux 새 버전

SublimeText3 Linux 새 버전

SublimeText3 Linux 최신 버전