JavaScript는 복사 기능을 구현합니다.
브라우저의 호환성을 무시하고 각 브라우저의 복사 기능 지원을 살펴보세요.
1. IE 브라우저에는 세 가지 해결 방법이 있으며 코드는 다음과 같습니다.
[javascript]
function copy(txtid){
var txtObj = document.getElementById(txtid);
if(window.clipboardData){ // IE에서만 지원됩니다. Object, Firefox 및 Chrome은
을 지원하지 않습니다. //1.clipboardData 개체를 통해 복사합니다.
//window.clipboardData.clearData()
//window.clipboardData. setData("Text",txtObj.value);
txtObj.select();
//document.execCommand("Copy") // IE에서만 지원되며 Firefox에서는 구문을 보고합니다. 오류, 크롬 실행 결과 false 반환(지원되지 않음)
//3. TextRange 객체를 통한 실시간 복사: 먼저 내용을 선택할 필요가 없습니다
txtObj.createTextRange().execCommand("복사");
}
}
함수 복사(txtid){
var txtObj = document.getElementById(txtid);
if(window.clipboardData) { // IE에서만 이 개체를 지원하고 Firefox 및 Chrome에서는 지원하지 않습니다
//1. ClipboardData 객체를 통해 복사
//window.clipboardData.clearData();
//window.clipboardData.setData("Text",txtObj.value);
//2. 문서 개체를 통해 복사: 먼저 중국어 텍스트를 선택한 다음 복사 명령을 실행합니다
//txtObj.select();
//document .execCommand("Copy"); // IE에서만 지원되며 Firefox는 구문 오류를 보고하고 Chrome 실행 결과는 false를 반환합니다(지원되지 않음)
//3. TextRange 객체를 통해: 먼저 콘텐츠를 선택할 필요가 없습니다.
txtObj.createTextRange().execCommand("Copy");
}
}
2. Firefox는 인터페이스 방식을 통해 구현됩니다. 보안상의 이유로 Firefox는 버전 17 이후부터 이 인터페이스를 닫습니다. 이전 버전도 사용할 수 있습니다. 코드는 다음과 같습니다:
[javascript]
varclip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interface.nsIClipboard) ;
varclip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interface.nsIClipboard); 사용자에게 정보를 제공하지 않습니다. 클립보드에 대한 작업을 제공합니다. 복사 기능에 대한 지원이 브라우저마다 동일하지 않다는 것을 알 수 있습니다.
Zero Clipboard 라이브러리
jhuckaby가 작성한 Zero Clipboard js 라이브러리는 Flash를 사용하여 콘텐츠를 클립보드에 복사합니다. 브라우저에 Flash 플러그인이 탑재되어 있으면 ActionScript는 JavaScript의 단점을 차단하고 브라우저 간 복사 호환성 문제를 해결합니다.
Zero Clipboard의 구현 원리: Zero Clipboard는 먼저 Flash 객체 라벨을 생성하여 투명한 Flash가 복사 버튼 위에 떠오를 수 있도록 합니다. 클릭한 것은 버튼이 아니라 Flash이기 때문에 필요한 내용이 Flash로 전송된 후 Flash를 통해 시스템 클립보드에 복사됩니다.
클립보드 제로 사용 방법
참고: Flash 기반이므로 Flash를 사용해야 합니다. 보안상의 이유로 웹 컨테이너(예: Apache, Tomcat)에서만 실행할 수 있으며, Flash를 직접 열면 버튼이 일시 중지된 애니메이션과 유사하다고 합니다. 설정을 클릭하고 신뢰할 수 있는 위치에 ZeroClipboard.swf를 추가해 보았는데 여전히 작동하지 않습니다. 로컬 브라우저에 문제가 있을 수 있습니다.
1> 압축된 Zero Clipboard 패키지를 다운로드하고 압축을 푼 후 ZeroClipboard.js 및 ZeroClipboard.swf라는 두 파일을 프로젝트에 넣습니다.
2>다음 코드인 Zero Clipboard.js 파일을 소개합니다: ;
참고: ZeroClipboard.js와 ZeroClipboard.swf는 동일한 경로에 배치되어야 합니다. 동일한 경로에 있지 않으면 ZeroClipboard.setMoviePath()를 사용하여 설정할 수 있습니다.
3> 다음과 같이 코드를 복사하세요.
[javascript]
varclip = new ZeroClipboard.Client(); // 새 클립 객체 생성
clip.setHandCursor( true ) / 복사할 텍스트를 설정합니다. 이는 텍스트 상자의 값일 수 있습니다.
clip.glue("copy-botton"); // 클립용 버튼을 등록합니다. 매개변수는 버튼 요소의 ID입니다. 버튼을 클릭하면 복사가 이루어집니다.
var clip = new ZeroClipboard.Client(); // 새 클립 객체 생성
clip.setHandCursor( true ) hello,world"); // 복사할 수 있는 텍스트를 설정합니다. 텍스트 상자의 값
clip.glue("copy-botton"); // 클립에 대한 버튼을 등록하고 매개변수는 버튼 요소의 ID입니다. 버튼을 클릭하면 복사됩니다.
4> 일반적으로 사용되는 Zero Clipboard 방법, 소스 코드를 직접 보는 것이 좋습니다:
reposition(): 페이지 크기가 변경될 때 방지, 플래시 버튼이 어긋날 수 있음
hide() : Flash 버튼 숨기기
show() : Flash 버튼 표시
setCSSEffects (): 플래시 폐색 버튼 스타일 실패 문제를 해결합니다(:hover를 .hover로 변경).
5>제로 클립보드 공통 이벤트, 이벤트 핸들러 함수는 addEventListener()입니다.
load: 플래시 버튼 로딩 이벤트
mouseOver: 마우스 위로 이동 이벤트
mouseOut: 마우스 밖으로 이동 이벤트
mouseDown: 마우스 아래로 이벤트
mouseUp: 마우스 놓기 이벤트
완료: 복사 성공 이벤트
jquery.zclip 라이브러리
ZeroClipboard는 네이티브 JavaScript 기반이므로 구현 시 jquery.zclip은 jQuery를 사용하여 Zero Clipboard를 캡슐화합니다. 프로젝트에서 이미 jQuery를 사용하고 있는 경우에는 jquery.zclip을 사용하는 것이 좋습니다.

핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

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

뜨거운 주제











기사는 JavaScript 라이브러리 작성, 게시 및 유지 관리, 계획, 개발, 테스트, 문서 및 홍보 전략에 중점을 둡니다.

이 기사는 브라우저에서 JavaScript 성능을 최적화하기위한 전략에 대해 설명하고 실행 시간을 줄이고 페이지로드 속도에 미치는 영향을 최소화하는 데 중점을 둡니다.

프론트 엔드 개발시 프론트 엔드 열지대 티켓 인쇄를위한 자주 묻는 질문과 솔루션, 티켓 인쇄는 일반적인 요구 사항입니다. 그러나 많은 개발자들이 구현하고 있습니다 ...

기술 및 산업 요구에 따라 Python 및 JavaScript 개발자에 대한 절대 급여는 없습니다. 1. 파이썬은 데이터 과학 및 기계 학습에서 더 많은 비용을 지불 할 수 있습니다. 2. JavaScript는 프론트 엔드 및 풀 스택 개발에 큰 수요가 있으며 급여도 상당합니다. 3. 영향 요인에는 경험, 지리적 위치, 회사 규모 및 특정 기술이 포함됩니다.

이 기사는 브라우저 개발자 도구를 사용하여 효과적인 JavaScript 디버깅, 중단 점 설정, 콘솔 사용 및 성능 분석에 중점을 둡니다.

동일한 ID로 배열 요소를 JavaScript의 하나의 객체로 병합하는 방법은 무엇입니까? 데이터를 처리 할 때 종종 동일한 ID를 가질 필요가 있습니다 ...

이 기사는 소스 맵을 사용하여 원래 코드에 다시 매핑하여 미니어링 된 JavaScript를 디버그하는 방법을 설명합니다. 소스 맵 활성화, 브레이크 포인트 설정 및 Chrome Devtools 및 Webpack과 같은 도구 사용에 대해 설명합니다.

JavaScript는 현대 웹 개발의 초석이며 주요 기능에는 이벤트 중심 프로그래밍, 동적 컨텐츠 생성 및 비동기 프로그래밍이 포함됩니다. 1) 이벤트 중심 프로그래밍을 사용하면 사용자 작업에 따라 웹 페이지가 동적으로 변경 될 수 있습니다. 2) 동적 컨텐츠 생성을 사용하면 조건에 따라 페이지 컨텐츠를 조정할 수 있습니다. 3) 비동기 프로그래밍은 사용자 인터페이스가 차단되지 않도록합니다. JavaScript는 웹 상호 작용, 단일 페이지 응용 프로그램 및 서버 측 개발에 널리 사용되며 사용자 경험 및 크로스 플랫폼 개발의 유연성을 크게 향상시킵니다.
