SVG – Learning by Coding
1: <?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
2: <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
3: "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd" [
4: <!ATTLIST svg xmlns:xlink CDATA #FIXED "http://www.w3.org/1999/xlink">
5: ]>
6:
7: <!-- SVG - Learning by Coding - http://www.datenverdrahten.de/svglbc/ -->
8: <!-- Author: Dr. Thomas Meinike 02/03 - thomas@handmadecode.de -->
9:
10: <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
11: onload="getSVGDoc(evt)">
12:
13: <title>SVG - Learning by Coding</title>
14: <desc>SVG-Spezifikation in Beispielen</desc>
15:
16: <defs>
17:
18: <style type="text/css">
19: <![CDATA[
20:
21: text
22: {
23: fill: #00C;
24: font-size: 12px;
25: }
26:
27: tspan
28: {
29: fill: #F00;
30: font-size: 12px;
31: }
32:
33: ]]>
34: </style>
35:
36:
37: <script type="text/javascript">
38: <![CDATA[
39:
40: var svgdoc,svgroot;
41:
42:
43: function getSVGDoc(load_evt)
44: {
45: svgdoc=load_evt.target.ownerDocument;
46: svgroot=svgdoc.documentElement;
47: }
48:
49:
50: function DoStyles(x)
51: {
52: var textobj,styleobj;
53:
54: textobj=svgdoc.getElementById("testtext");
55: styleobj=textobj.style;
56:
57: if(x==0)alert(styleobj);
58: if(x==1)alert(styleobj.length);
59: if(x==2)alert("item(0) = "+styleobj.item(0)+"\nitem(1) = "+styleobj.item(1));
60: if(x==3)alert("fill: "+styleobj.getPropertyValue("fill"));
61: if(x==4)styleobj.setProperty("text-decoration","underline","");
62: if(x==5)styleobj.removeProperty("text-decoration");
63: if(x==6)alert(textobj.style.cssText);
64: if(x==7)alert(textobj.getAttribute("style"));
65: if(x==8)textobj.setAttribute("style","fill: #F00; font-size: 18px");
66: }
67:
68: ]]>
69: </script>
70:
71: </defs>
72:
73: <text x="20" y="30" style="fill: #000; font-size: 24px">
74: DOM-Methoden für dynamischen CSS-Zugriff</text>
75:
76: <text id="testtext" x="20" y="75" style="font-size: 18px; fill: #090">
77: ein mit CSS formatierter Text</text>
78:
79: <a xlink:href="" cursor="pointer" onclick="return false">
80: <text x="30" y="100" onclick="DoStyles(0)">
81: <tspan>style</tspan> [auf Style-Objekt zugreifen]
82: </text>
83: </a>
84:
85: <a xlink:href="" cursor="pointer" onclick="return false">
86: <text x="30" y="120" onclick="DoStyles(1)">
87: <tspan>length</tspan> [Anzahl der Eigenschaften]
88: </text>
89: </a>
90:
91: <a xlink:href="" cursor="pointer" onclick="return false">
92: <text x="30" y="140" onclick="DoStyles(2)">
93: <tspan>item(i)</tspan> [einzelne Eigenschaften abfragen]
94: </text>
95: </a>
96:
97: <a xlink:href="" cursor="pointer" onclick="return false">
98: <text x="30" y="160" onclick="DoStyles(3)">
99: <tspan>getPropertyValue()</tspan> [einzelne Eigenschaftswerte abfragen]
100: </text>
101: </a>
102:
103: <a xlink:href="" cursor="pointer" onclick="return false">
104: <text x="30" y="180" onclick="DoStyles(4)">
105: <tspan>setProperty()</tspan> [Eigenschaften und Werte setzen/ändern]
106: </text>
107: </a>
108:
109: <a xlink:href="" cursor="pointer" onclick="return false">
110: <text x="30" y="200" onclick="DoStyles(5)">
111: <tspan>removeProperty()</tspan> [Eigenschaften entfernen]
112: </text>
113: </a>
114:
115: <a xlink:href="" cursor="pointer" onclick="return false">
116: <text x="30" y="220" onclick="DoStyles(6)">
117: <tspan>cssText</tspan> [style-Attribut als Zeichenkette lesen]
118: </text>
119: </a>
120:
121: <a xlink:href="" cursor="pointer" onclick="return false">
122: <text x="30" y="240" onclick="DoStyles(7)">
123: <tspan>getAttribute("style")</tspan> [style-Attribut als Zeichenkette lesen]
124: </text>
125: </a>
126:
127: <a xlink:href="" cursor="pointer" onclick="return false">
128: <text x="30" y="260" onclick="DoStyles(8)">
129: <tspan>setAttribute("style","...")</tspan> [style-Attribut neu zuweisen]
130: </text>
131: </a>
132:
133: </svg>
[zum Anfang]