Robert B.: Mit Javascript und DOM, MathML-Code erzeugen

Beitrag lesen

Moin,

<div id="Ausgabe">
    <math xmlns="http://www.w3.org/1998/Math/MathML">
        <mstyle id="0" displaystyle="true">

  
Ist denn 0 überhaupt eine gültige ID oder müssen die nicht mit \_ oder einem Buchstaben beginnen? Und reicht id, musst du den Namensraum berücksichtigen oder ist xml:id die richtige Wahl?  
  

> Der Javascript Code soll dynamisch alles Ezeugen, dabei habe ich es zuerst auf diese Art versucht. Es soll ein Tag namens <mfrac> erstellt werden.  
>   
> ~~~javascript
  

> function bruch_bereich_eintragen() {  
>     var mfrac = document.createElement('mfrac');  
>     document.getElementById('0').appendChild(mfrac);  
> 

Was zuerst zwar funktioniert, füge ich dort zwei Zahlen hinzu wird es nicht als Bruch angezeigt.

Du kannst dir mal den erzeugten Code anzeigen lassen, dann siehst du, ob JavaScript auch tatsächlich das im DOM-Baum generiert:

<mfrac>
    <mn>78</mn>
    <mn>56</mn>
</mfrac>


>   
> […]  
>   
> Danach hab ich mich im Netz umgeschaut und folgenden Ansatz gefunden.  
>   
> ~~~javascript
  

> function bruch_bereich_eintragen() {  
>     var mfrac = document.createElementNS('http://www.w3.org/1998/Math/MathML','mfrac');  
>     document.getElementById('0').appendChild(mfrac);  
> 

Leider funktioniert mit der NS erweiterung garnichts mehr. Woran liegt das ?

Wie erzeugst du denn die mn – mit createElement oder mit createElementNS?

Viele Grüße,
Robert