josef stebegg: svg und javascript

Beitrag lesen

Hallo,
(zweite Antwort)

Ohne recht zu wissen was hier das array  (ist wegen nur einer Farbe  bei mir wahrscheinlich auch nicht notwendig) und kf.length bedeuten
habe ich einíge Sachen probiert.
Da ich ja nur ein Auswahlmenue habe, kann ich analog zum ersten Mal auf eine Variable verzichten.

Ich habe wie hier beim Ausgangsscript
(schreibe es noch einmal her)

function NeueFarbe2SVG()
  {
  var k,svgobj;
  d=document.forms[1];
  k=d.elements["nebenstr"].options[d.elements["nebenstr"].selectedIndex].value;

if(k!="Auswahl")
  {
    svgobj=parent.bild.document.getElementById("g1_map").getSVGDocument();
    svgobj.getElementById(k).getStyle().setProperty("visibility","visible");
    svgobj.getElementById(k).getStyle().setProperty("fill","#ff0000");
  }
  }

ja nur "nebenstr".

Ich kann mir fuer meinen Anwendungsfall nicht vorstellen daß ich ohne diese letzten drei  Zeilen (svgobj.....) auskomme. Blos wie einbauen.

Ein von vielen erfolglosen Versuchen.

var d,k,kf,s.svgobj;

function NeueFarbe2SVG()
{
  d=document.forms[1];

k=d.elements["nebenstr"].options[d.elements["nebenstr"].selectedIndex].value;
  s=d.elements["nebenstr"].selectedIndex;
  svgobj=parent.bild.document.getElementById("g1_map").getSVGDocument();

if(k!="Auswahl")
  {
    for(i=1;i<=kf.length;i++)
    {
           if(i==s)svgobj.getElementById(k).getStyle().setProperty("fill","#ff0000");
     else svgobj.getElementById(kf[i-1],"k"+i).getStyle().setProperty("fill","#999");
    }
  }
}

//-->
</script>

mfG
josef

der aktuelle Stand (ohne dem erweiterten script)
http://www.innonet.at/~jstebegg/graz01.html
funktioniert bis jetzt jedenfalls sehr gut.