Copie dans le presse-papiers sans Flash
J'ai trouvé beaucoup de solutions pour copier dans le presse-papiers, mais ils ont tous soit avec flash, ou pour les sites secondaires.
Je suis à la recherche de méthode de copie dans le presse-papiers automatiquement, sans flash et pour le côté utilisateur, c'est pour les userscripts et bien sûr de la croix-navigateur.
- N'ai pas trouvé d', été à la recherche pour la même chose. Ne voulez utiliser le Flash soit donc supprimé cette fonctionnalité avant la création.
- en double stackoverflow.com/questions/400212/...
- Sans utiliser le FLASH, je doute que vous pouvez le faire dans les différents navigateurs. Mais il y a une solution concrète qui peuvent vous aider à obtenir la solution zeroclipboard
- Rakesh - votre "solution concrète" est basé sur Flash. Il l'habitude de travailler dans n'importe quel navigateur que j'utilise.
- méthode stackoverflow.com/questions/400212/... c'est pour le site côté pas de côté utilisateur @Rakesh zeroclipboard est bonne, mais je veux trouver la méthode complètement sans Flash
- J'ai entendu dire que le soutien à la zeroclipboard a été supprimée, de sorte qu'il est plus probable une nouvelle solution viendra
- Essayez ceci: clipboardjs.com
Vous devez vous connecter pour publier un commentaire.
Sans flash, c'est tout simplement pas possible dans la plupart des navigateurs. L'utilisateur du presse-papiers de la sécurité, des ressources pertinentes, car il pourrait contenir des choses comme des mots de passe ou numéros de carte de crédit. Ainsi, les navigateurs, à juste titre, de ne pas autoriser Javascript accès (certains l'autorisent avec un avertissement montré que l'utilisateur a confirmer, ou à la signature du code Javascript, mais rien de cela n'est cross-browser).
J'avais essayé la solution flash et je n'ai pas trop aimé. Trop complexe et trop lent. Ce que j'ai fait était de créer un textarea, placer les données dans et à utiliser le navigateur "CTRL + C" de comportement.
La partie javascript jQuery:
La partie HTML:
<textarea id="textArea1"></textarea>
Maintenant, mettez ce que vous voulez copier dans " METTRE LE TEXTE À COPIER ICI. PEUT ÊTRE UNE FONCTION.' de la zone.
Fonctionne très bien pour moi. Il vous suffit de faire un CTRL+C combinaison. Le seul inconvénient est que vous allez avoir une vilaine textarea affiché dans votre site. Si vous utilisez le style="display:none" la copie de la solution ne fonctionnera pas.
opacity: 0
e.metaKey
dans le keydown comparaison, mais pour une raison quelconque, l'action de copie n'est pas déclenché. Voir ce violon: jsfiddle.net/gableroux/gta67/1clipboard.js vient de sortir pour copier dans le presse-papiers sans avoir besoin de Flash
Le voir en action ici > http://zenorocha.github.io/clipboard.js/#example-action
Il est enfin là! (Tant que vous n'avez pas de support de Safari ou IE8... -_- )
Vous pouvez maintenant gérer actions du presse-papiers sans Flash. Voici la documentation:
https://developer.mozilla.org/en-US/docs/Web/API/Document/execCommand
https://developers.google.com/web/updates/2015/04/cut-and-copy-commands?hl=en
https://msdn.microsoft.com/en-us/library/hh801227%28v=vs.85%29.aspx#copy
Alors que attend avec impatience pour Xbrowser soutien de la Presse-papiers de l'API...
Cela fonctionne à merveille dans Chrome, Firefox, Edge, c'est à dire
IE ne demande à l'utilisateur une fois pour accéder au presse-papiers.
Safari (5.1 au moment de la rédaction) ne prend pas en charge
execCommand
parcopier/couper
JS:
HTML:
Tous les navigateurs (sauf Firefox qui est capable de gérer uniquement le type mime
"plain/text"
autant que je l'ai testé) ont pas mis en œuvre la Presse-papiers de l'API. I. e, en essayant de lire le presse-papiers de l'événement dans google Chrome à l'aide dejette: Uncaught TypeError: Illégal constructeur
La meilleure ressource de la incroyable gâchis qui se passe entre les navigateurs et le presse-papiers peut être vu ici (caniuse.com) (→ Suivre les commentaires sous "Notes").
MDN dit que le support de base est "(OUI)" pour tous les navigateurs, ce qui est inexact de provoquer l'on pourrait attendre au moins l'API de travail, à tous.
Vous pouvez utiliser un presse-papiers local à la page HTML. Cela vous permet de couper/copier/coller le contenu DANS la page HTML, mais pas à partir de/vers des applications tierces ou entre deux pages HTML.
C'est la façon dont vous pouvez écrire une fonction personnalisée pour ce faire (testé sur chrome et firefox):
Ici est la VIOLON qui montre comment vous pouvez le faire.
Je vais aussi coller le violon ici pour référence.
HTML
JS
window
. C'est n'est pas une véritable presse-papiers disponible pour l'OS et un autre onglet du navigateur. Aussi, la sélection peut être facilement fait en utilisantselect()
et que de simplementwindow.getSelection()
document.execCommand('copy')
faire ce que vous souhaitez. Mais il n'est pas directement utilisable exemples dans ce fil sans les fichiers inutiles, si elle est ici:Il n'y a pas moyen de contourner, vous devez utiliser le flash. Il y a un plugin JQuery appelé jquery.copie qui a fourni de la croix-navigateur, copier et coller à l'aide d'un flash (swf). Ceci est similaire à la façon dont la syntaxe surligneur sur mon blog fonctionne.
Une fois que vous faites référence à la jquery.copy.js fichier tout ce que vous devez faire pour envoyer les données dans le presse-papiers exécutez la commande suivante:
Agréable et facile 😉