Wie füge ich Text in Eingabefelder ein, die ihn blockieren?


14

Auf vielen Webseiten blockieren sie das Kopieren / Einfügen mit JavaScript.

Gibt es eine Möglichkeit, solche Eingaben so zu gestalten, wie sie sollten (z. B. Kopieren / Einfügen aktivieren)?

Ich verwende Google Chrome.


Es ist sehr unwahrscheinlich. Sie geben das nicht ohne Grund ein, also blockieren sie auch jede Art der Umgehung.
LPChip

Es gibt viele Möglichkeiten, solche Skripte zu umgehen, und eine dedizierte Browser-Erweiterung sollte viele Probleme dieses Problems lösen.
Syntagma

1
Wenn Sie dies bereits wissen, warum stellen Sie die Frage?
LPChip

Ich weiß, dass es machbar ist, ich weiß nichts über eine solche Erweiterung.
Syntagma

Wenn Sie Firefox verwenden, können Sie zu about: config gehen und dom.event.clipboardevents.enabled in false ändern. Ich weiß nicht, ob es in Chrome etwas Ähnliches gibt.
user276648

Antworten:


15

Markieren Sie einfach den Text und ziehen Sie ihn in das Textfeld. Probieren Sie es hier aus !

Dies funktioniert bei mir in Firefox und Chrome.


1
Tolle Lösung! In Chrome können Sie diese Zeichenfolge in die Adressleiste "data: text / html, <html contenteditable>" (ohne Anführungszeichen) einfügen, um eine leere Zeichenfläche zu erhalten. Ich habe dazu ein Lesezeichen erstellt. Jetzt kann ich meinen Text in diese leere Seite einfügen und ihn dann in die Felder ziehen, die ausgefüllt werden müssen.
Dünne

Das ist das beste. Der Versuch, js in der Entwicklerkonsole auszuführen, bereitete mir Kopfschmerzen. Danke vielmals!
Millar248

Cool, Mann? Danke. Du hast mir Zeit gespart.
Vitali Petrov

7

Es ist hackig und funktioniert nicht immer, aber oft ist nur ein Listener für CTRL+ C/ eingestellt, CTRL+Vund Sie können es umgehen, indem Sie CTRL+ INS/ SHIFT+ INSanstelle von Kopieren / Einfügen verwenden.

Wenn sie etwas doofes tun, wie Flash, um eine leere Zeichenfolge in einer Schleife (Zucken) in die Zwischenablage zu schreiben, haben Sie kein Glück.


5

1
Dies sollte die richtige Antwort sein. Don't Fuck With Paste hat 465 Sterne bei Github und praktisch eine 5-Sterne-Bewertung im Chrome Store - mit 413 Bewertungen. Das hat mir wirklich geholfen. Vielen Dank!
Ben

Für mich hilft diese Erweiterung, funktioniert aber nicht auf allen Websites.
Dünne

5

Wenn Sie Firefox verwenden, habe ich die folgende Lösung gefunden. Ich bin mir jedoch nicht sicher, welche Mindestversion erforderlich ist.

  1. Gehe zu about:config
  2. Suchen nach dom.event.clipboardevents.enabled
  3. Doppelklicken Sie darauf, um den Wert in zu ändern false

Dadurch konnte ich sofort nach dem Ändern einfügen. Ich musste den Browser nicht einmal neu starten.


2

Die einfachste Problemumgehung (in Bezug auf die Benutzerfreundlichkeit) für Google Chrome wäre das Hinzufügen der Erweiterung " Kopie zulassen" .


2
Überprüfen Sie diese Erweiterung vor der Installation sorgfältig. Rezensenten behaupten, es sei Malware.
George

2

Drücken Sie F12 und fügen Sie den folgenden Code in die Konsole ein.

var allowPaste = function(e){
  e.stopImmediatePropagation();
  return true;
};
document.addEventListener('paste', allowPaste, true);

1

Sie können JavaScript auf der Seite einfach mit einem einfachen Lesezeichen deaktivieren. Von. http://javascript.about.com/library/bldis.htm

Wenn Sie ein Lesezeichen erstellen, das das folgende Skript als Link enthält (oder diesen Code sogar in die Adressleiste einfügen und die Eingabetaste drücken), wird das gesamte JavaScript von der aktuellen Seite entfernt:

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();}

Das Problem ist natürlich, dass, während Sie jetzt in dieses Textfeld einfügen können, wenn das Formular JavaScript zum Senden des Formulars verwendet, auch dieses fehlerhaft ist.


1

Entscheiden Sie sich, meine Lösung dazu hinzuzufügen (ein Lesezeichen zu erstellen, das von diesem Repo und der Erweiterung https://github.com/jswanner/DontFuckWithPaste inspiriert ist ). Dieses Lesezeichen ermöglicht auch das Kopieren in Dokumente, die diese Verwendung von Javascript deaktivieren.

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


Bitte posten Sie nicht dieselbe Antwort auf mehrere Fragen. Wenn die gleichen Informationen wirklich beide Fragen beantworten, sollte eine Frage (normalerweise die neuere) als Duplikat der anderen geschlossen werden. Sie können dies anzeigen, indem Sie abstimmen, um es als Duplikat zu schließen, oder, wenn Sie nicht genug Ruf dafür haben , eine Flagge hissen, um anzuzeigen, dass es sich um ein Duplikat handelt. Passen Sie andernfalls Ihre Antwort auf diese Frage an und fügen Sie dieselbe Antwort nicht einfach an mehreren Stellen ein.
DavidPostill

0

Unter Windows können Sie AutoHotkey verwenden

Syntax:

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

Beispiel: Wenn Sie eingeben xyz, wird der folgende Text geschrieben (als ob er geschrieben wurde).

::xyz::
Send hi {enter} This a new line  {enter}. Another new line  {enter} whatsoever. {enter} 
return

1
Ich mag dieses: ^ Q :: SendInput, {Raw}% Zwischenablage% CTRL-Q sendet den Inhalt der Tastatur als Eingabe (ähnlich wie beim Eingeben)
Nijave
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.