SVGMarkerElement
Baseline
Widely available
*
This feature is well established and works across many devices and browser versions. It’s been available across browsers since Juli 2015.
* Some parts of this feature may have varying levels of support.
Das SVGMarkerElement Interface bietet Zugriff auf die Eigenschaften von <marker>-Elementen sowie Methoden, um diese zu manipulieren. Das <marker>-Element definiert die Grafiken, die zum Zeichnen von Markierungen auf einer Form verwendet werden.
Die folgenden Eigenschaften und Methoden beziehen sich auf die Attribute des durch SVGMarkerElement repräsentierten <marker>-Elements oder wirken auf diese.
Instanz-Eigenschaften
Dieses Interface erbt auch Eigenschaften von seinem Eltern-Element, SVGElement.
SVGMarkerElement.markerUnitsSchreibgeschützt-
Gibt ein
SVGAnimatedEnumeration-Objekt mit einem der folgenden Werte zurück:- 0
-
SVG_MARKERUNITS_UNKNOWN, was bedeutet, dass dasmarkerUnits-Attribut einen Wert hat, der von den beiden vordefinierten Schlüsselwörtern abweicht. - 1
-
SVG_MARKERUNITS_USERSPACEONUSE, was bedeutet, dass dasmarkerUnits-Attribut den SchlüsselwortwertuserSpaceOnUsehat. - 2
-
SVG_MARKERUNITS_STROKEWIDTH, was bedeutet, dass dasmarkerUnits-Attribut den SchlüsselwortwertstrokeWidthhat.
SVGMarkerElement.markerWidthSchreibgeschützt-
Gibt ein
SVGAnimatedLength-Objekt zurück, das die Breite des<marker>-Ansichtsfensters enthält. SVGMarkerElement.markerHeightSchreibgeschützt-
Gibt ein
SVGAnimatedLength-Objekt zurück, das die Höhe des<marker>-Ansichtsfensters enthält. SVGMarkerElement.orientTypeSchreibgeschützt-
Gibt ein
SVGAnimatedEnumeration-Objekt mit einem der folgenden Werte zurück:- 0
-
SVG_MARKER_ORIENT_UNKNOWN, was bedeutet, dass dasorient-Attribut einen Wert hat, der von den beiden vordefinierten Schlüsselwörtern abweicht. - 1
-
SVG_MARKERUNITS_ORIENT_AUTO, was bedeutet, dass dasorient-Attribut den Schlüsselwortwertautohat. - 2
-
SVG_MARKERUNITS_ORIENT_ANGLE, was bedeutet, dass dasorient-Attribut einen<angle>- oder<number>-Wert hat, der den Winkel angibt.
SVGMarkerElement.orient-
Ein String, der beschreibt, wie der Marker bei seiner Positionierung auf der Form rotiert wird. Er spiegelt das
orient-Attribut des<marker>-Elements wider. SVGMarkerElement.orientAngleSchreibgeschützt-
Gibt ein
SVGAnimatedAngle-Objekt zurück, das den Wert desorient-Attributewinkels enthält. SVGMarkerElement.refXSchreibgeschützt-
Gibt ein
SVGAnimatedLength-Objekt zurück, das den Wert desrefX-Attributs des<marker>enthält. SVGMarkerElement.refYSchreibgeschützt-
Gibt ein
SVGAnimatedLength-Objekt zurück, das den Wert desrefY-Attributs des<marker>enthält. SVGMarkerElement.viewBoxSchreibgeschützt-
Gibt ein
SVGAnimatedRect-Objekt zurück, welches einSVGRectenthält, das die durch dasviewBox-Attribut auf dem<marker>-Element festgelegten Werte enthält. SVGMarkerElement.preserveAspectRatioSchreibgeschützt-
Gibt ein
SVGPreserveAspectRatio-Objekt zurück, welches die durch daspreserveAspectRatio-Attribut auf dem<marker>-Ansichtsfenster festgelegten Werte enthält.
Instanz-Methoden
Dieses Interface erbt auch Methoden von seinem Eltern-Element, SVGElement.
SVGMarkerElement.setOrientToAuto()-
Setzt den Wert des
orient-Attributs aufauto. SVGMarkerElement.setOrientToAngle()-
Setzt den Wert des
orient-Attributs auf einen spezifischen Winkelwert.
Beispiele
Das folgende SVG wird in den Beispielen referenziert.
<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>
Ermitteln der Breite des Markers
Die markerWidth-Eigenschaft gibt ein SVGAnimatedLength zurück, das ein SVGLength mit dem Wert des markerWidth-Attributs enthält.
let marker = document.getElementById("arrow");
console.log(marker.markerWidth.baseVal.value); // 6
Aktualisieren des Orientierungswinkels
Im folgenden Beispiel wird der Wert des orient-Attributs mit setOrientToAngle() aktualisiert, indem ein SVGAngle verwendet wird, der mit SVGSVGElement.createSVGAngle() erstellt wurde.
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> |