Ergebnis 1 bis 5 von 5
  1. #1
    David23x ist offline Grünschnabel
    registriert
    20-07-2015
    Beiträge
    2

    Ordnen von DOM-Objekten nach Reihenfolge im HTML-Dokument

    Ich muss eine HTMLCollection, die ich mit getElementsByClassName() gekriegt habe, danach ordnen, welche Reihenfolge die Tags im Dokument haben. Ich habe bereits ziemlich lange gegoogelt, aber keine Möglichkeit gefunden. Was mir helfen würde, wäre eine Funktion, die die zurückgibt, welche Zeile oder welches Zeichen der Tag im Dokument einnimmt. Danke im Vorraus.

  2. #2
    tsseh ist offline Foren-Gott
    registriert
    19-05-2008
    Beiträge
    5.667

    AW: Ordnen von DOM-Objekten nach Reihenfolge im HTML-Dokument

    wandel die collection in ein array und sortiere mit https://developer.mozilla.org/en-US/...cumentPosition
    bei disconnected und implementation specific musst du dir was einfallen lassen, disconnected wirst du ausschließen können, bleibt noch implementation specific.

  3. #3
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.757

    AW: Ordnen von DOM-Objekten nach Reihenfolge im HTML-Dokument

    Zitat Zitat von David23x Beitrag anzeigen
    welche Reihenfolge die Tags im Dokument haben
    Eigentlich sollte die HTML-Collection schon nach der Reihenfolge im DOM sortiert sein (W3C DOM4 - For each element represented by the collection, in tree order, run these substeps: ):
    Code:
    <!DOCTYPE html>
    
    <html>
    <head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <title>Fenstertitel</title>
    <style type="text/css"></style>
    </head>
    <body>
    <div class="test" id="a">
    	<div class="test" id="b"></div>
    	<div class="test" id="c">
    		<div class="test" id="d">
    			<div class="test" id="e"></div>
    			<div class="test" id="f"></div>
    			<div class="test" id="g"></div>
    			<div class="test" id="h"></div>
    		</div>
    	</div>
    	<div class="test" id="i"></div>
    	<div class="test" id="j"></div>
    </div>
    <div class="test" id="k"></div>
    <div class="test" id="l"></div>
    <div class="test" id="m"></div>
    <script type="text/javascript">
    alert([].slice.call(document.getElementsByClassName("test")).reduce(function(str, node){return str + node.id}, ""));
    </script>
    </body>
    </html>
    - in welchem Browser ist das denn nicht der Fall?

    Zitat Zitat von David23x Beitrag anzeigen
    welche Zeile oder welches Zeichen der Tag im Dokument einnimmt
    Diese Information kannst du aus dem DOM nicht auslesen.

  4. #4
    David23x ist offline Grünschnabel
    registriert
    20-07-2015
    Beiträge
    2

    AW: Ordnen von DOM-Objekten nach Reihenfolge im HTML-Dokument

    Ich dachte irgendwo gelesen zu haben, dass die Elemente nicht vorgegebenermaßen in der entsprechenden Reihenfolge sein müssen, und auch wenn ich mir gedacht habe, dass das meistens doch der Fall ist, wollte ich korrekt bleiben, aber da das ja scheinbar nicht stimmte, kann ich mir etwas Arbeit sparen.

  5. #5
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.757

    AW: Ordnen von DOM-Objekten nach Reihenfolge im HTML-Dokument

    Es kann sein, dass ältere Browser das so gemacht habe, aber die modernen sollten das alle richtig machen. Hast du die Quelle noch?

Ähnliche Themen

  1. Antworten: 13
    Letzter Beitrag: 27-12-2013, 21:41
  2. javaskript html in html dokument ausgeben
    Von theexplainer im Forum JavaScript
    Antworten: 3
    Letzter Beitrag: 21-12-2010, 13:11
  3. XPath im IE aufs HTML-Dokument
    Von poncho im Forum JavaScript
    Antworten: 0
    Letzter Beitrag: 14-01-2008, 08:56
  4. html-Dokument als Hintergrund
    Von schlurpsel im Forum Allgemeines
    Antworten: 3
    Letzter Beitrag: 30-08-2007, 00:09
  5. Antworten: 2
    Letzter Beitrag: 05-02-2004, 08:55

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •