[SVG] Functie uit SVG bestand aanroepen wil niet

Pagina: 1
Acties:

  • Slagroom
  • Registratie: Juni 2001
  • Laatst online: 23-08 10:29
Hallo,

Ik ben bezig met het onderzoeken van SVG (Scalable Vector Graphics). Nu wil ik vanuit een HTML pagina een functie uit een, met EMBED, 'geïnclude' SVG bestand aanroepen.

Nu wil dit perfect met de voorbeelden op de Adobe site (http://www.adobe.com/svg) maar ik krijg het niet voor elkaar.

Dit is het script:
http://www.monstar.nl/test/svg/bar.html

Zou iemand anders even mee willen kijken wat hier mis mee is?

  • Slagroom
  • Registratie: Juni 2001
  • Laatst online: 23-08 10:29
Is dit de goede plek voor SVG? Want ik lees hier op dit forum bijna niets over SVG...

  • HunterPro
  • Registratie: Juni 2001
  • Niet online
Op dinsdag 14 mei 2002 14:21 schreef Monstar.nl het volgende:
Is dit de goede plek voor SVG? Want ik lees hier op dit forum bijna niets over SVG...
het is wel de juiste plek voor SVG (aangezien SVG ook onder webdesign en graphics valt). Zelf heb ik er weinig verstand van (sterker nog: nog nooit mee gewerkt), ik kijk zo wel even of ik er wat van snap. Maar een schop na 20 minuten wordt overigens nooit leuk gevonden ;)

  • Slagroom
  • Registratie: Juni 2001
  • Laatst online: 23-08 10:29
Sorry, zal het niet weer doen... oeps...

Maar... als je zou willen kijken, zou dat very PHAT zijn! een oplossing is natuurlijk koelerder ;)

  • HunterPro
  • Registratie: Juni 2001
  • Niet online
Grrrr... de SVG viewer gedownload en geinstalleerd (tenminste dat denk ik aangezien het geen melding geeft dat'ie geinstalleerd is), loopt m'n IE grandioos vast elke keer als ik die test-link van jou open :(

  • Slagroom
  • Registratie: Juni 2001
  • Laatst online: 23-08 10:29
Sorry, maar ik kan daar niets aan doen, hier loopt ie als een zonnetje... is alles wel meegekomen in de installatie? Misschien nog een keer installeren?

  • HunterPro
  • Registratie: Juni 2001
  • Niet online
Op dinsdag 14 mei 2002 14:36 schreef Monstar.nl het volgende:
Sorry, maar ik kan daar niets aan doen, hier loopt ie als een zonnetje... is alles wel meegekomen in de installatie? Misschien nog een keer installeren?
dit zijn schoolbakken (lees: rotte schoolbakken), ik probeer het vanmiddag even thuis te proberen :)

  • Slagroom
  • Registratie: Juni 2001
  • Laatst online: 23-08 10:29
koel man, alvast bedankt, maar als er meer mensen zijn die willen mee kijken.. graag...

En onder het motto van meerdere handen maken licht werk... iedereen mag mee helpen! IEDEREEN! ;)

Verwijderd

Bij het klikken op de knop voer je het volgende uit:

window.laatBerichtZien('Welkom')

Dat zou betekenen dat het window object een methode laatBerichtZien heeft. Dus ten eerste zou je dat window. ervoor weg moeten halen. Ten tweede definieer je nergens (niet in de SVG als de gewone source) de functie laatBerichtZien().

  • Slagroom
  • Registratie: Juni 2001
  • Laatst online: 23-08 10:29
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
    <script>
        <![CDATA[
            
            SVGDocument = null;
            function DoLoad(LoadEvent) {
                SVGDocument = LoadEvent.getTarget().getOwnerDocument();
            }
            
            function laatBerichtZien(bericht) {
                alert(bericht);
            }
        ]]>
    </script>

De functie wordt wel degelijk gedefinieerd. En window ervoor heb ik gedaan omdat dat ook op de site stondt... en als ik dat weg haal... werk het niet meer... ook niet als ik er document of parent o.i.d. van maak...

Verwijderd

Hmm. Overheen gekeken. Het .window lijkt mij in ieder geval helemaal niet goed. Volgens mij moet je eerst een javascript var maken met daarin het svg document. Dus iets van (ik heb het geweten) svgdoc = embedname.getSVGDocument() en dan svgdoc.LaatBerichtZien() oid. Maar ik weet het ook niet precies, sorry.

  • Slagroom
  • Registratie: Juni 2001
  • Laatst online: 23-08 10:29
Niets... kijk maar, hij doet het nog niet...

  • Slagroom
  • Registratie: Juni 2001
  • Laatst online: 23-08 10:29
kick

  • Slagroom
  • Registratie: Juni 2001
  • Laatst online: 23-08 10:29
iemand?

  • RM-rf
  • Registratie: September 2000
  • Laatst online: 00:14

RM-rf

1 2 3 4 5 7 6 8 9

je gebruikt een name en roept die direct aan: 'bargraph' bestaat echter niet als propertie van het window-object (wat een call naar een directe variable is)

je zult dus eerst het embed-object op moeten vragen, waarschijnlijk kan dat via document.embeds, of mogelijk door door document.tags() heen te lopen;
echter de meest wenselijke methode is het opvragen van het element via zijn ID
code:
1
2
3
4
5
6
7
8
9
10
var svgdoc;
function Init() {
  bargraph = document.getElementById('bargraph')
        svgdoc = bargraph.getSVGDocument();
}

[...]

<embed src="bar.svg" id="bargraph" 
  width="450" height="400" type="image/svg+xml">

heb het niet getest maar zou moeten werken

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen

Pagina: 1