Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2007 Teil von Oktober

SELFHTML Forumsarchiv
Text automatisch selektieren

Informationsseite
  1. Seite (JAVASCRIPT) Text automatisch selektieren von Freezer, 04. 10. 2007, 15:39
nach unten

Text automatisch selektieren

Die folgende Nachricht zum Thema stammt von: Freezer, 04. 10. 2007, 15:39

Hallo zusammen,

Ich zerbrech mir im moment so bisserl den Kopf und bin mir auch ned sicher ob das, was ich möchte, überhaupt möglich ist. Also, ich möchte gerne wenn ich auf ein Element in meinem Browser klicke, dass der gesamte Inhalt dieses Elements selektiert wird (damit ich das nicht manuell machen muss). Dahinter steckt die gleiche Systematik wie bei einer Textarea. Da der text in einer Textarea einfach ned sehr anschaulich ist, möchte ich versuchen es über diesen Weg zu lösen.

So hab ich mir mein HTML vorgestellt:

<p class="code" onclick="doSelect(this);">
<code>
Hier kommt mein Code rein.
</code>
</p>

Hat mir jemand einen Tipp wonach ich suchen muss um hier zum Erfolg zu kommen?

Freundliche Grüsse
Freezer

PS: Kennt wer ne Möglichkeit wie ich Typo3-Script anschaulich darstellen kann? (mit Farben etc.)

nach obennach unten

Text automatisch selektieren

Die folgende Nachricht zum Thema stammt von: molily, 04. 10. 2007, 16:13

Hallo,

Schau mal hier:
/archiv/2007/8/t157769/#m1026406

Mathias

nach obennach unten

Text automatisch selektieren

Die folgende Nachricht zum Thema stammt von: Freezer, 04. 10. 2007, 16:33

Vielen Dank.

Genau das wonach ich gesucht habe :D

Gruss

nach obennach unten

Text automatisch selektieren (wichtige Korrektur)

Die folgende Nachricht zum Thema stammt von: molily, 07. 10. 2007, 04:42

Hallo,

Ich muss meine Lösung korrigieren: Es ist mir aufgefallen, dass die gar nicht im Opera 9.23 und im neuesten 9.5-Alpha-Build 1600 funktioniert, ich aber groß dazugeschrieben hab, dass sie es würde.

Das liegt daran, dass Opera zwar die Firefox-Funktion selectAllChildren kennt, diese zeitigt keine Wirkung. Opera kennt aber die TextRanges aus dem Internet Explorer, allerdings nur über document.selection.createRange, nicht über document.body.createTextRange.

Wir kommen also zu dieser Funktion:

function markieren (elem) {
 if (document.selection && document.selection.createRange) {
  var textRange = document.selection.createRange();
  textRange.moveToElementText(elem);
  textRange.select();
 } else if (window.getSelection) {
  var selection = window.getSelection();
  selection.selectAllChildren(elem);
 }
}


Erfolgreich getestet in Firefox 1.0.8, IE 6, Opera 9.23
Safari nicht getestet, Konqueror 3.5.7 steigt geordnet aus, weil er nix kann.

Testseite
(Zumindest »markieren3« muss markiert werden beim Überfahren mit der Maus.)

Archivsuche-Honeypot: Text, Inhalt, markieren, auswählen, selektieren, Markierung, Auswahl, ohne, Formular, Feld, input, textarea, kopieren

Mathias

nach obennach unten

Text automatisch selektieren (wichtige Korrektur)

Die folgende Nachricht zum Thema stammt von: Orlando, 07. 10. 2007, 23:35

»» Testseite(Zumindest »markieren3« muss markiert werden beim Überfahren mit der Maus.)

Safari 3 bzw. ein aktueller WebKit (r26101 von heute) markieren nichts, siehe auch Bug 13399. Verfügbare Objekte:

  document.body.createTextRange: undefined
  document.selection: undefined
  window.getSelection: function
  + selection.selectAllChildren: undefined

Hilft dieser Workaround?

  d=window.getSelection()+'';
  d=(d.length==0)?document.title:d;
  alert(d);


Ergänzend noch Opera 9.50a Mac (build 4460):

  document.body.createTextRange: undefined
  document.selection: object
  + document.selection.createRange: function
  + TextRange.moveToElementText: function
  + TextRange.select: function
  window.getSelection: function
  + selection.selectAllChildren: function

»» Archivsuche-Honeypot: Text, Inhalt, markieren, auswählen, selektieren, Markierung, Auswahl, ohne, Formular, Feld, input, textarea, kopieren

Cool, Tagging! *g*

Roland

--
Aquahu akbar!

nach obennach unten

Text automatisch selektieren (wichtige Korrektur)

Die folgende Nachricht zum Thema stammt von: molily, 07. 10. 2007, 23:49

Hallo,

Danke für die Tests!

»»   document.body.createTextRange: undefined
»»   document.selection: undefined
»»   window.getSelection: function
»»   + selection.selectAllChildren: undefined

Das sieht sehr schlecht aus. Damit kann ich nicht arbeiten...

»» Hilft dieser Workaround?

Leider gar nicht. Damit lässt sich der von Hand selektierte Text auslesen, aber nicht die Markierung setzen.

Mathias

nach oben
Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2007 Teil von Oktober

© 1998-2006 Seite Impressum, Software: Classic Forum