Comment coller du texte dans des champs de saisie qui le bloquent?

14

Sur de nombreuses pages Web, ils bloquent le copier / coller à l'aide de JavaScript.

Existe-t-il un moyen de faire fonctionner ces entrées comme il se doit (par exemple, activer le copier / coller)?

J'utilise Google Chrome.

syntagme
la source
C'est très improbable. Ils ne mettent pas cela sans aucune raison, ils bloqueront donc toute sorte de moyen de contourner cela.
LPChip
Il existe de nombreuses façons de contourner ces scripts et une extension de navigateur dédiée devrait résoudre de nombreux problèmes de ce problème.
syntagma
1
Si vous le savez déjà, pourquoi postez-vous la question?
LPChip
Je sais que c'est faisable, je ne connais pas une telle extension.
syntagma
Si vous utilisiez Firefox, vous pouvez accéder à about: config et remplacer dom.event.clipboardevents.enabled par false. Je ne sais pas si quelque chose de similaire existe dans Chrome.
user276648

Réponses:

16

Mettez simplement le texte en surbrillance et faites-le glisser dans le champ de texte. Essayez-le ici !

Cela fonctionne pour moi dans Firefox et Chrome.

HullCityFan852
la source
1
Excellente solution! En chrome, vous pouvez mettre cette chaîne dans la barre d'adresse "data: text / html, <html contenteditable>" (sans les guillemets) pour obtenir un canevas vierge. J'ai créé un signet pour cela. Maintenant, je peux coller mon texte dans cette page vierge, puis le faire glisser dans les champs qui doivent être remplis.
mince
C'est le meilleur. Essayer d'exécuter js dans la console développeur me donnait mal à la tête. Merci beaucoup!
Millar248
Homme cool? merci .. Vous m'avez fait gagner du temps.
Vitali Petrov
7

C'est hacky et ne fonctionnera pas toujours, mais la plupart du temps, il n'y a qu'un écouteur défini pour CTRL+ C/ CTRL+Vet vous pouvez le contourner en utilisant CTRL+ INS/ SHIFT+ INSau lieu de copier / coller.

S'ils font quelque chose de maladroit comme utiliser flash pour écrire une chaîne vide dans le presse-papiers en boucle (twitch), alors vous n'avez pas de chance.

Junkiebev
la source
5

Voici une extension Chrome open source

https://chrome.google.com/webstore/detail/dont-fuck-with-paste/nkgllhigpcljnhoakjkgaieabnkmgdkb

Si vous êtes intéressé par le code https://github.com/jswanner/DontFuckWithPaste

user276648
la source
1
Ce devrait être la bonne réponse. Don't Fuck With Paste a 465 étoiles sur Github et pratiquement 5 étoiles sur le Chrome Store - avec 413 avis. Cela m'a vraiment aidé. Merci!
Ben
Pour moi, cette extension aide, mais ne fonctionne pas sur tous les sites.
mince
5

Si vous utilisez Firefox, j'ai trouvé la solution suivante. Cependant, je ne sais pas quelle version minimale est requise.

  1. Aller à about:config
  2. Rechercher dom.event.clipboardevents.enabled
  3. Double-cliquez dessus pour changer la valeur en false

Cela m'a permis de coller immédiatement après l'avoir changé. Je n'ai même pas eu à redémarrer le navigateur.

Mirrana
la source
3

Appuyez sur F12 et collez le code suivant dans la console.

var allowPaste = function(e){
  e.stopImmediatePropagation();
  return true;
};
document.addEventListener('paste', allowPaste, true);
Ahmad Sharif
la source
Voie programmatique. merci
Jaber Al Nahian
2

La solution de contournement la plus simple (en termes de convivialité) pour Google Chrome serait d'ajouter l' extension Autoriser la copie .


la source
2
Vérifiez soigneusement cette extension avant de l'installer. Les critiques prétendent que c'est un malware.
George
1

Vous pouvez simplement désactiver JavaScript sur la page à l'aide d'un simple bookmarklet. De. http://javascript.about.com/library/bldis.htm

Si vous créez un signet contenant le script suivant comme lien (ou même collez ce code dans la barre d'adresse et appuyez sur Entrée), il supprimera tout le JavaScript de la page actuelle:

javascript:void(d=document);if(frames.length){alert('Script%20doesn/'t%20work%20in%20frames');}else{while((el=d.getElementsByTagName('script')).length){el[0].parentNode.removeChild(el[0]);};onerror=function(){};d.close();}

Le problème est bien sûr que, même si vous pouvez désormais coller dans cette zone de texte si le formulaire a utilisé JavaScript pour soumettre le formulaire, cela aussi sera cassé.

Mokubai
la source
1

Décidez d'ajouter ma solution à cela (faire un bookmarklet inspiré de ce dépôt et de l'extension https://github.com/jswanner/DontFuckWithPaste ) Ce bookmarklet permettra également de copier sur des documents qui désactivent cela en utilisant javascript.

javascript:(function(){
  allowCopyAndPaste = function(e){ 
      e.stopImmediatePropagation(); 
      return true;
  };
  document.addEventListener('copy', allowCopyAndPaste, true);
  document.addEventListener('paste', allowCopyAndPaste, true);
  document.addEventListener('onpaste', allowCopyAndPaste, true);
})();

AllowCopyAndPaste

Légion
la source
Veuillez ne pas poster la même réponse à plusieurs questions. Si la même information répond vraiment aux deux questions, alors une question (généralement la plus récente) doit être fermée en double de l'autre. Vous pouvez l'indiquer en votant pour le fermer comme doublon ou, si vous n'avez pas assez de réputation pour cela, lever un drapeau pour indiquer qu'il s'agit d'un doublon. Sinon, adaptez votre réponse à cette question et ne collez pas simplement la même réponse à plusieurs endroits.
DavidPostill
0

Sur Windows, vous pouvez utiliser AutoHotkey

syntaxe:

::whatever::
Send [....text… Use  {enter} for line breaks]
return

exemple: si vous tapez xyzil écrira le texte ci-dessous (comme s'il avait été écrit)

::xyz::
Send hi {enter} This a new line  {enter}. Another new line  {enter} whatsoever. {enter} 
return
J.
la source
1
J'aime celui-ci: ^ Q :: SendInput, {Raw}% clipboard% CTRL-Q envoie le contenu du clavier en entrée (similaire à la saisie)
nijave