Codebereich selektieren

  • Hallo Leute,
    ersteinmal Danke für alles, wobei ihr mir schon geholfen habt. Ich weiß, dass ich oft Beiträge poste.
    In diesem geht es um select();
    Ich habe für einen Blog ein Codebereich erstellt, in welchen ich jetzt eine Funktion einbauen möchte.
    Diese Funktion soll bewirken, dass der komplette Code ausgewählt wird.
    Hier ist zur Veranschaulichung ein kleines Bild:
    [attachment=0]<!-- ia0 -->Unbenannt.PNG<!-- ia0 -->[/attachment]
    Mein gebastelter Codebereich

    Hier ist der HTML-Code:

    Code
    <img src="png/icons/select.png" align="right" onclick="select()" class="selectbutton" />
    <ol class="code">
    <li>body {</li>
    <li></li>
    <li>}</li>
    <li>div#page {</li>
    <li>width: 800px;</li>
    <li>}</li>
    </ol>

    Rechts oben das Bild mit dem Mauszeiger soll der "Schalter" sein. Ich habe das Bild schon mit folgendem Style versorgt:

    Code
    img.selectbutton {
    cursor: pointer;
    }

    Die Funktion habe ich select() genannt:

    Code
    function select() {
    var el = document.getElementByClass("code");
    document.el.select();
    }

    Warum funktioniert das nicht und wie funktioniert es?

    Mit freundlichen Grüßen,
    Philipp E.

  • Huhu, das geht viel einfacher so wie du es dir vorstellst, schau mal hier, ich hoffe ich konnte helfen (probier den Code einfach mal aus :D )

    Code
    <element onclick="this.focus(); this.select();">
      Blabla
      blablablabliblub
    </element>
  • Problem ist, dass das keine Elemente sind, die den Focus erhalten können und dementsprechend auch nicht via select() selektiert werden können.
    Du benötigst ein Selection-Object welches du dann dementsprechend modifizieren musst.

    Gute Lektüre hierzu: MDN Docs - Selection

  • also ich habe mich jetz mal auf mehreren internetseiten informiert über select
    man kann glaub ich auch einen bereich erstellen lassen
    mit range oder so

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!