J'essaie d'écrire une fonction JavaScript pour modifier le contenu du presse-papiers avant de coller. En ce moment, j'ai eu l'événement lié «Coller» pour fonctionner via JQuery. Mais ce n'est pas important. Maintenant, je voudrais obtenir des données de presse-papiers, mais je ne peux pas savoir comment. Je serais heureux pour chaque allusion. P> p>
4 Réponses :
C'est une robuste. Si je vous souviens bien, c'est-à-dire que c'est à dire à l'accès au presse-papiers, mais par défaut Firefox n'est pas due aux problèmes de sécurité. Je devais faire cela pour un projet que je travaillais et a été obligé d'utiliser un petit fichier SWF qui a fait la copie. p>
Pour autant que je sache, cette solution permet de copier dans le presse-papiers, mais de ne pas avoir du presse-papiers. Par conséquent, ce n'est pas du tout une solution à la question proposée - je ne sais pas pourquoi il l'a été marqué (à moins que l'OP n'ait été confondu). Si je me trompe, veuillez expliquer!
Voici comment l'obtenir de IE ou de Chrome. Tout d'abord, il empêche la pâte réelle de se produire, alors il fait une vérification des fonctionnalités, puis définit le texte variable dans le texte du presse-papiers. Avec cela, vous pouvez manipuler le texte, puis la définir comme valeur pour l'entrée / élément de votre collage à ou tout ce que vous souhaitez en faire avec cela.
//get clipboard text event.preventDefault(); var text = null; if (window.clipboardData) text = window.clipboardData.getData("Text"); else if (event.originalEvent && event.originalEvent.clipboardData) text = event.originalEvent.clipboardData.getData("Text"); //manipulate the text text = '..do stuff with it..'; //set the text $(this).val(text);
Le clipbuthowata code> peut contenir des données dans divers formats potentiels. Son éventuel programme ajoutera des données de presse-papiers dans plusieurs formats. Pour rechercher les formats, regardez via Souvent, les données du presse-papiers contiennent du texte brut et le premier type répertorié dans clipboarddata.types code>.
Types code> sera le type MIME "Texte / Plain". Si vous copiez le texte d'un navigateur Tho, vous verrez deux types dans la liste: "Texte / plaine" et "Texte / HTML". En fonction de la chaîne que vous passez dans
getdata code>, vous pouvez saisir le texte brut ou le code HTML. Il semble que "Text" soit sténographie pour "Text / plain" et "URL" est court pour "Text / Uri-List". P>
element.addEventListener('paste', function(event) {
var cb = event.clipboardData
if(cb.types.indexOf("text/html") != -1) { // contains html
var pastedContent = cb.getData("text/html")
} else if(cb.types.indexOf("text/html") != -1) { // contains text
var pastedContent = cb.getData("text/html")
} else {
var pastedContent = cb.getData(cb.types[0]) // get whatever it has
}
// do something with pastedContent
})
Ajouté un tas d'explication
$('#paste-button').click(function () { navigator.clipboard.readText() .then((text) => { $('#wallet-address').val(text); }) .catch((err) => $('#wallet-address').val('')); });
Bien que ce code puisse répondre à la question, fournir un contexte supplémentaire quant à la manière dont illave et pourquoi il résout le problème améliorerait la valeur à long terme de la réponse. Vous pouvez trouver plus d'informations sur la façon d'écrire de bonnes réponses dans le centre d'aide: Stackoverflow.com/help/how-to-answer < / a>. Bonne chance 🙂