Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 22-10-2003, 15:11   #1 (permalink)
Flash Destiny Member
 
Registriert seit: Oct 2001
Ort: Hamburg
Beiträge: 31
JavaScript Flashobjekt nicht über getVariable ansprechbar

Hallo Flasher,

hab folgendes Problem:

Ich schreibe mit "innerHTML" über JavaScript ein Flashobjekt (also: <OBJECT ....><PARAM ....></OBJECT>) in die Seite. Anschliessend setze ich eine Variable über
document.getElementById('flashObj').setVariable('V ar').
Die Variable ist dann auch sauber gesetzt worden, also bis dahin alles wunderbar.

Versuche ich etwas später (durch Buttonclick) die Variable per
document.getElementById('flashObj').getVariable('V ar')
wieder auszulesen, gibt mir JavaScript die Meldung "Unbekannter Fehler".

Anmerkung:
document.getElementById('flashObj') wird von JavaScript als "[object]" erkannt. Das Objekt ist also da und wird gefunden...

Jemand irgendeinen Tipp???
Chaot
Flashchaot ist offline   Mit Zitat antworten
Alt 22-10-2003, 15:52   #2 (permalink)
[Ernst Reiter]
 
Benutzerbild von Scrawer
 
Registriert seit: Jul 2001
Ort: austria
Beiträge: 3.691
ich hab nun keine ahnung welchen wert genau du ändern möchtest... aber wenn ich das richitig sehe geht es um den object tag und die attribute..... sollte das dann nicht setAttribute sein? und nicht setVariable.....

z.b. document.getElementsByTagName("object")[0].setAttribute("height", "500");
__________________
Das Gesetz des Lebens liegt im Notwendigen. Der Reiz des Lebens liegt im Überflüssigen
m.f.g Scrawer (www.thinkspace.at)
Scrawer ist offline   Mit Zitat antworten
Alt 22-10-2003, 19:29   #3 (permalink)
Flash Destiny Member
 
Registriert seit: Oct 2001
Ort: Hamburg
Beiträge: 31
Hi Scrawer,

nein ich will eine Variable aus Flash herauslesen. Das geht normalerweise über getVariable('VarName'). In meinem Fall wurde der Film aber über JavaScript in die Seite geschrieben. Dann scheint es nicht zu gehen, weshalb weiss ich nicht.

Geändert von Flashchaot (22-10-2003 um 19:30 Uhr)
Flashchaot ist offline   Mit Zitat antworten
Alt 23-10-2003, 08:31   #4 (permalink)
[Ernst Reiter]
 
Benutzerbild von Scrawer
 
Registriert seit: Jul 2001
Ort: austria
Beiträge: 3.691
schreibst du dann den ganzen object/embed teil mit document.write oder fügst es auf DOM basis mit appendChild hinzu?
aber so oder so du kannst denn wert dann schon auslesen mit JS..... wobei ich auch da mit attributes arbeiten würde und nicht pro var ein eigenes child... aber das sind details
das problem ist eher dann zur laufzeit den wert in flash zu setzen..... da gibt es mit js schon einen weg aber der ist nicht sehr crossbrowser/system like.......
http://www.flashworker.de/tutorial/36/001.html

wenn du nur beim filmstart.... eine var in flash setzen möchtest... würde ich es am einfachsten per argument beim param name machen....... bzw src beim embed tag..... z.b. src="file.swf?arg=xxx"
__________________
Das Gesetz des Lebens liegt im Notwendigen. Der Reiz des Lebens liegt im Überflüssigen
m.f.g Scrawer (www.thinkspace.at)
Scrawer ist offline   Mit Zitat antworten
Alt 23-10-2003, 18:05   #5 (permalink)
Flash Destiny Member
 
Registriert seit: Oct 2001
Ort: Hamburg
Beiträge: 31
Wie ich Variablen setzen kann weiss ich auch, ob nun angehängt im param-Tag oder über setVariable (nur IE). Auch das Auslesen funktioniert normalerweise per getVariable, sogar bei längeren Values. Crossbrowser-fähig muss die Anwendung bzw. das Dokument auch nicht sein. IE ab Version 5.5 reicht.
Die Methode "innerHTML" ist ein Sub des Objekt "document", also nicht Bestandteil des DOM's.

Leider habe ich noch keine Lösung gefunden über getVariable auf das Objekt zuzugreifen. Wenn es ganz normal statisch ins HTML geschrieben wurde, dann sicherlich, aber in meinem Fall leider noch nicht...
Flashchaot ist offline   Mit Zitat antworten
Alt 24-10-2003, 12:59   #6 (permalink)
[Ernst Reiter]
 
Benutzerbild von Scrawer
 
Registriert seit: Jul 2001
Ort: austria
Beiträge: 3.691
na dann wenn du es eh weisst

wobei wie du auf object zugreifst findest schon in meinem ersten posting

auf DOM Basis.. habe ich schon öfter den ganzen Code dynamisch per appendChild in das HTML File gesetzt.. und wenn du eine saubere XML Struktur hast.... wird es auch auf allen neuen Browsern DOM >=1.0 laufen.....
und das setzten ändern und auslesen von werten ist da nur eine kleinigkeit...
evtl.. solltest mal in die SelfHTML Referenz schaun... dort findest alles was nötig ist

ahja... noch was.. keine leerzeichen zwischen childs!!! da es es dann als TextNode durchgeht...... zur Zeit macht das nur der Opera... aber Fakt ist.... das es nach XML Konventions richig ist....
aber OK es ist nix neues das nur der Opera sich an Konventions hält
__________________
Das Gesetz des Lebens liegt im Notwendigen. Der Reiz des Lebens liegt im Überflüssigen
m.f.g Scrawer (www.thinkspace.at)
Scrawer ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 17:24 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele