Overview

Namespaces

  • Alvine
    • Markup
      • Html
        • Constraint
        • Element
          • Html
          • Svg
        • Node
        • Operation
        • Tokenizer
          • State
          • Token
            • Util
        • TreeConstructor
          • InsertionMode

Classes

  • AbstractOperation
  • CacheObject
  • Component
  • Dataset
  • Document
  • Element
  • Engine
  • Fragment
  • InputStream
  • LoggerDefaultName
  • MissingTokenizerException
  • Node
  • NodeList
  • OpenElementsStack
  • Parser
  • ParserException
  • Tokenizer
  • TokenizerException
  • TokenStack
  • TreeConstructor

Interfaces

  • FromToken
  • Operation
  • Overview
  • Namespace
  • Class
  • Tree
  • Deprecated

Class OpenElementsStack

Erweiterung des Standard-Stacks um Funktionen für den HTML-Parser

Alvine\Types\Stack
Extended by Alvine\Markup\Html\OpenElementsStack
Namespace: Alvine\Markup\Html
Package: Alvine\Markup\Html
Category: Alvine
License: Alvine Nutzungslizenz
Author: schukai GmbH info@schukai.de
Version: $Revision:$
Since: 20150228
Link: alvine.io
Link: http://www.w3.org/TR/html5/syntax.html#the-stack-of-open-elements
Located at OpenElementsStack.class.php
Methods summary
public
# __construct( boolean $htmlFragmentParsingAlgorithm = false )

Neuer Stack

Neuer Stack

Parameters

$htmlFragmentParsingAlgorithm
HTML-Fragment
public Alvine\Markup\Html\OpenElementsStack
# popAllNodesWithoutHtmlRoot( )

Alle nodes bis auf das HTML-Node vom Stapel entfernen

Alle nodes bis auf das HTML-Node vom Stapel entfernen

Returns

Alvine\Markup\Html\OpenElementsStack
public Alvine\Markup\Html\OpenElementsStack
# popAllNodesUntil( string $tagName )

Alle Elemente bis zu einem Beliebigen Tag-Node mit dem Namen $tagName entfernen. Liegt die Node nicht auf dem Stapel werden alle Nodes entfernt.

Alle Elemente bis zu einem Beliebigen Tag-Node mit dem Namen $tagName entfernen. Liegt die Node nicht auf dem Stapel werden alle Nodes entfernt.

Parameters

$tagName

Returns

Alvine\Markup\Html\OpenElementsStack
public Alvine\Markup\Html\OpenElementsStack
# removeSecondElementFromParentNode( )

Das zeite Element vom Stape entfernen

Das zeite Element vom Stape entfernen

Returns

Alvine\Markup\Html\OpenElementsStack
public boolean
# isSecondElementIsBody( )

Prüfen ob das zweite Element ein Body-Node ist

Prüfen ob das zweite Element ein Body-Node ist

Returns

boolean
public Alvine\Markup\Html\Node
# getTopmostNode( )

Zuerst hinzugefügte Node oder null

Zuerst hinzugefügte Node oder null

Returns

Alvine\Markup\Html\Node
public Alvine\Markup\Html\OpenElementsStack
# deleteElement( Alvine\Markup\Html\Node $node )

Ein Element vom Stack unabhängig von der Position löschen.

Ein Element vom Stack unabhängig von der Position löschen.

Parameters

$node

Returns

Alvine\Markup\Html\OpenElementsStack
public null|Alvine\Markup\Html\Node
# getBottommostNode( string|array|null $tag = null )

Zuletzt hinzugefügte Node oder Null

Zuletzt hinzugefügte Node oder Null

Wird ein Tag übergeben, so wird die zuletzt hinzugefügte Node mit diesem Tag zurückgegeben.

Wird der Tag (oder die Liste der Tags) nicht gefunden oder ist der Stack leer, so wird \null zurückgegeben

Parameters

$tag
Tag

Returns

null|Alvine\Markup\Html\Node
public Alvine\Markup\Html\Node
# getPreviousNode( string $tag = null )

Vorherige Node

Vorherige Node

Wird kein Tag angegeben, so wird die vorherieg Node zur CurrentNode zurückgegeben. Ansonsten wird im Stack nach unten "gesucht".

Parameters

$tag
Start der Suche

Returns

Alvine\Markup\Html\Node

Throws

Alvine\Types\EmptyStackException
public Alvine\Markup\Html\Node
# getCurrentNode( )

Aktuelle Node

Aktuelle Node

Returns

Alvine\Markup\Html\Node
public Alvine\Markup\Html\Node
# getAdjustedCurrentNode( Alvine\Markup\Html\Node $context )

AdjustNode

AdjustNode

Parameters

$context

Returns

Alvine\Markup\Html\Node
public Alvine\Markup\Html\Node|null
# getNodeBefore( Alvine\Markup\Html\Node $node )

Node vor der eingehängten Node

Node vor der eingehängten Node

Parameters

$node

Returns

Alvine\Markup\Html\Node|null
public boolean
# haveAnElementTargetNodeInASpecificScope( string $targetTag = null, array $list = null )

Überprüfen ob im speziellen Bereich eine Node vorhanden ist.

Überprüfen ob im speziellen Bereich eine Node vorhanden ist.

Parameters

$targetTag
Tag der Zielnode
$list
Liste die durchsucht wird

Returns

boolean

Link

http://www.w3.org/TR/html5/syntax.html#has-an-element-in-the-specific-scope
public boolean
# haveAParticularElementInScope( string $targetTag )

Sonderbereich

Sonderbereich

Parameters

$targetTag

Returns

boolean

See

Alvine\Markup\Html\OpenElementsStack::haveAnElementTargetNodeInASpecificScope()
public boolean
# haveAParticularElementInListItemScope( string $targetTag )

Sonderbereich Liste

Sonderbereich Liste

Parameters

$targetTag

Returns

boolean

See

Alvine\Markup\Html\OpenElementsStack::haveAnElementTargetNodeInASpecificScope()
public boolean
# haveAParticularElementInButtonScope( string $targetTag )

Sonderbereich Button

Sonderbereich Button

Parameters

$targetTag

Returns

boolean

See

Alvine\Markup\Html\OpenElementsStack::haveAnElementTargetNodeInASpecificScope()
public boolean
# haveAParticularElementInTableScope( string $targetTag )

Sonderbereich Tabelle

Sonderbereich Tabelle

Parameters

$targetTag

Returns

boolean

See

Alvine\Markup\Html\OpenElementsStack::haveAnElementTargetNodeInASpecificScope()
public boolean
# haveAParticularElementInSelectScope( type $targetTag )

Parameters

$targetTag

Returns

boolean
public Alvine\Markup\Html\Node
# getNodeBeforeCurrentNode( )

Die Node vor der aktuellen Node

Die Node vor der aktuellen Node

Returns

Alvine\Markup\Html\Node
public Alvine\Markup\Html\OpenElementsStack
# clearTheStackBackToTableContext( )

Stack bereinigen und mit den Tokens synchronisieren

Stack bereinigen und mit den Tokens synchronisieren

Returns

Alvine\Markup\Html\OpenElementsStack

Link

http://www.w3.org/TR/html5/syntax.html#clear-the-stack-back-to-a-table-context
public Alvine\Markup\Html\OpenElementsStack
# clearTheStackBackToTableBodyContext( )

Stack bereinigen und mit den Tokens synchronisieren

Stack bereinigen und mit den Tokens synchronisieren

Returns

Alvine\Markup\Html\OpenElementsStack

Link

http://www.w3.org/TR/html5/syntax.html#clear-the-stack-back-to-a-table-body-context
Properties summary
protected boolean $htmlFragmentParsingAlgorithm
#
alvine.markup.html API-Dokumentation 1.2.0 | © schukai GmbH | Impressum