Felix Riesterer: Selektierten Text in <body> erkennen und auslesen

Beitrag lesen

Lieber Linuchs,

ich habe nicht verstanden, wie Du die Benutzerführung realisieren willst. Wie man Teile einer Website in eine Fremdsprache übersetzt, kannst Du bei meinem online-Umfragen-Tool sehen.

Nun sieht es aber so aus, dass selektierte Texte nur in input-Feldern erkannt werden,

Der Browser kann mit window.getSelection beliebige Markierungen handhaben, nicht nur in <input> oder <textarea>. Dazu solltest Du aber ein passendes Event wählen, wie z.B. mouseup und keyup, da damit Markierungen getätigt werden können.

  document.getElementsByTagName("body")[0].addEventListener('onselect', function (event) {
[...]
  });

Erstens notierst Du hier besser document.body und zweitens definierst Du besser eine benannte Funktion, um sie dann verschiedenen Events zuzuweisen:

function checkForSelection () {
  [...]
}

document.body.addEventListener("mouseup", checkForSelection);
document.body.addEventListener("keyup", checkForSelection);

Liebe Grüße,

Felix Riesterer.