Heim  >  Artikel  >  Web-Frontend  >  JS ist mit gängigen Browsern kompatibel, um Inhalte in die Zwischenablage zu kopieren. Javascript-Fähigkeiten

JS ist mit gängigen Browsern kompatibel, um Inhalte in die Zwischenablage zu kopieren. Javascript-Fähigkeiten

WBOY
WBOYOriginal
2016-05-16 16:27:321573Durchsuche

Heutzutage gibt es immer mehr Browsertypen wie IE, Firefox, Chrome, Safari usw., daher ist es nicht so einfach, eine kleine Funktion zum Kopieren von Inhalten in die Zwischenablage in js zu implementieren.

In der Ära von FLASH 9 gab es eine Lösung, um die Js aller Browser zu töten und Inhalte in die Zwischenablage zu kopieren :

Diese Lösung ist eine der beliebtesten Methoden: Die berühmte Lösung zum Kopieren der Zwischenablage verwendet eine Datei „clipboard.swf“ als Brücke, um Inhalte in die Zwischenablage zu kopieren.

Das Prinzip ist: Erstellen Sie eine versteckte Flash-Datei und weisen Sie der Variablen FlashVars in Flash „clipboard=..“ zu. Durch diese Zuweisung legt Flash den kopierten Inhalt in der Zwischenablage ab. Diese Methode ist mit IE, Firefox, Opera, Chrome und Safari kompatibel. Es handelt sich wirklich um eine „universelle“ Lösung. Die Installationsrate von Browser-Flash ist sehr hoch, was eine nahezu perfekte Lösung darstellt.

Code kopieren Der Code lautet wie folgt:

http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
http://www.w3.org/1999/xhtml">

Webentwickler – <a href="http://www.Admin10000.com">www.Admin10000.com</a>





Code in die Zwischenablage kopieren








Download-Adresse von clipboard.swf:
http://www.jeffothy.com/weblog/uploads/clipboard.php

Aber in der Flash 10-Ära funktioniert die oben beschriebene Methode nicht mehr.

Weil Flash10 vorschreibt, dass auf die Zwischenablage nur durch echte Vorgänge in der SWF-Datei (z. B. Mausklicks) zugegriffen werden kann und die obige Methode nur eine versteckte SWF-Datei verwendet, um die Flash-Zwischenablage über Javascript zu bedienen, und der Benutzer dies nicht tut Es gibt keinen tatsächlichen Vorgang für die SWF-Datei, daher ist diese Methode ungültig.

Wie kann man also dieses Problem des „echten Betriebs“ lösen? Sie können eine JavaScript-Bibliothek verwenden:

Zero Clipboard

Diese js-Bibliothek kann das Kopieren in die Zwischenablage mit Flash 10 unterstützen. Das Prinzip dieser Methode besteht darin, ein DOM-Element wie eine Schaltfläche oder ein Div auf einem transparenten Flash abzudecken (unsichtbar für den Benutzer). Wenn auf das DOM geklickt wird, wird tatsächlich auf den Flash geklickt, wodurch auf die Flash-Zwischenablage zugegriffen wird.

Das Folgende ist ein debuggtes Beispiel:

Code kopieren Der Code lautet wie folgt:

http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
" >
http://www.w3.org/1999/xhtml">

Zero Clipboard Test






复制


点击下载该类库: http://www.jb51.net/jiaoben/24961.html

调试时请上传到网站,本地直接打开flash会出错的,没权限。zeroClipboard.js文件里moviePath属性是falsh的地址,就Die Datei „ZeroClipboard.swf“ wird als Datei verwendet.

这种js复制内容到剪贴板的方案可支持浏览器:Firefox / IE / opera / chorme / safari 所有浏览器!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn