SVGMarkerElement

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

* Some parts of this feature may have varying levels of support.

Die SVGMarkerElement-Schnittstelle bietet Zugriff auf die Eigenschaften der <marker>-Elemente sowie Methoden zu deren Manipulation. Das <marker>-Element definiert die Grafiken, die zum Zeichnen von Markierungen auf einer Form verwendet werden.

EventTarget Node Element SVGElement SVGMarkerElement

Die folgenden Eigenschaften und Methoden beziehen sich alle auf die Attribute des durch SVGMarkerElement dargestellten <marker>-Elements.

Instanz-Eigenschaften

Diese Schnittstelle erbt auch Eigenschaften von ihrem Elternteil, SVGElement.

SVGMarkerElement.markerUnits Schreibgeschützt

Gibt ein SVGAnimatedEnumeration-Objekt zurück, mit einem der folgenden Werte:

0

SVG_MARKERUNITS_UNKNOWN bedeutet, dass das markerUnits-Attribut einen anderen Wert hat als die beiden vordefinierten Schlüsselwörter.

1

SVG_MARKERUNITS_USERSPACEONUSE bedeutet, dass das markerUnits-Attribut den Schlüsselwortwert userSpaceOnUse hat.

2

SVG_MARKERUNITS_STROKEWIDTH bedeutet, dass das markerUnits-Attribut den Schlüsselwortwert strokeWidth hat.

SVGMarkerElement.markerWidth Schreibgeschützt

Gibt ein SVGAnimatedLength-Objekt zurück, das die Breite des <marker>-Viewports enthält.

SVGMarkerElement.markerHeight Schreibgeschützt

Gibt ein SVGAnimatedLength-Objekt zurück, das die Höhe des <marker>-Viewports enthält.

SVGMarkerElement.orientType Schreibgeschützt

Gibt ein SVGAnimatedEnumeration-Objekt zurück, mit einem der folgenden Werte:

0

SVG_MARKER_ORIENT_UNKNOWN bedeutet, dass das orient-Attribut einen anderen Wert hat als die beiden vordefinierten Schlüsselwörter.

1

SVG_MARKERUNITS_ORIENT_AUTO bedeutet, dass das orient-Attribut den Schlüsselwortwert auto hat.

2

SVG_MARKERUNITS_ORIENT_ANGLE bedeutet, dass das orient-Attribut einen <angle>- oder <number>-Wert hat, der den Winkel angibt.

SVGMarkerElement.orientAngle Schreibgeschützt

Gibt ein SVGAnimatedAngle-Objekt zurück, das den Winkel des orient-Attributs enthält.

SVGMarkerElement.refX Schreibgeschützt

Gibt ein SVGAnimatedLength-Objekt zurück, das den Wert des refX-Attributs des <marker> enthält.

SVGMarkerElement.refY Schreibgeschützt

Gibt ein SVGAnimatedLength-Objekt zurück, das den Wert des refY-Attributs des <marker> enthält.

SVGMarkerElement.viewBox Schreibgeschützt

Gibt ein SVGAnimatedRect-Objekt zurück, das ein SVGRect enthält, welches die durch das viewBox-Attribut auf dem <marker>-Element festgelegten Werte enthält.

SVGMarkerElement.preserveAspectRatio Schreibgeschützt

Gibt ein SVGPreserveAspectRatio-Objekt zurück, das die durch das preserveAspectRatio-Attribut auf dem <marker>-Viewport festgelegten Werte enthält.

Instanz-Methoden

Diese Schnittstelle erbt auch Methoden von ihrem Elternteil, SVGElement.

SVGMarkerElement.setOrientToAuto()

Setzt den Wert des orient-Attributs auf auto.

SVGMarkerElement.setOrientToAngle()

Setzt den Wert des orient-Attributs auf einen spezifischen Winkelwert.

Beispiele

Das folgende SVG wird in den Beispielen referenziert.

html
<svg id="svg" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <marker
      id="arrow"
      viewBox="0 0 10 10"
      refX="5"
      refY="5"
      markerWidth="6"
      markerHeight="6"
      orient="90">
      <path d="M 0 0 L 10 5 L 0 10 z" />
    </marker>
  </defs>
</svg>

Ermittlung der Breite des Markers

Die markerWidth-Eigenschaft gibt ein SVGAnimatedLength zurück, das ein SVGLength mit dem Wert des markerWidth-Attributs enthält.

js
let marker = document.getElementById("arrow");
console.log(marker.markerWidth.baseVal.value); // 6

Aktualisierung des Ausrichtungswinkels

Im folgenden Beispiel wird der Wert des orient-Attributs mithilfe von setOrientToAngle() aktualisiert, wobei ein SVGAngle verwendet wird, das mit SVGElement.createSVGAngle() erstellt wurde.

js
let svg = document.getElementById("svg");
let marker = document.getElementById("arrow");
console.log(marker.orientAngle.baseVal.value); // value in SVG above - 90
let angle = svg.createSVGAngle();
angle.value = "110";
marker.setOrientToAngle(angle);
console.log(marker.orientAngle.baseVal.value); // new value - 110

Spezifikationen

Specification
Scalable Vector Graphics (SVG) 2
# InterfaceSVGMarkerElement

Browser-Kompatibilität