Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 24-11-2010, 10:32   #1 (permalink)
backflasher
 
Benutzerbild von SteveDragon
 
Registriert seit: Sep 2001
Ort: Darmstadt
Beiträge: 92
Question External Interface Call Problem

Tach zusammen,

nachdem mir letzte Woche hier super geholfen wurde hab ich nun in Konsequenz ein neues Problem bekommen.

Ich ziehe mir aus einem XML die URL zu einer Grafik, diese URL soll dann mit einem External Interface Call als String zum Aufruf dieser Grafik via Javascript gesendet werden. Es geht hier um eine paralelle Anzeige von Werbebannern zu Videoinhalten.

Die URL ist im XML mit CDATA-Tags eingerahmt, so:

Code:
<HTMLResource><![CDATA[<IFRAME width="728" height="90" SCROLLING="No" FRAMEBORDER="0" MARGINHEIGHT="0" MARGINWIDTH="0" SRC="http://im.banner.t-online.de/adiframe/3.0/784/2928361/0/225/creativeid=1767;bnid=2;adid=5708942;itime=594158716"></IFRAME>]]></HTMLResource>
deswegen hole ich mir die in etwa so:

Code:
banner_cdata = banner.Knoten5[0].HTMLResource.toString();
var banner2:XML = new XML(banner_cdata);
var bannerURL = banner2.@SRC;
Wenn ich mir das Trace, dann bekomme ich eine URL a la

Code:
http://www.meineSeite.de/gef/banner.gif
. . Soweit cool.

Mein Problem ist nun, daß ich diese URL via External Interface an ein Javascript auf der html-Seite übergeben muss und dieses Javascript den Aufruf explizit mit Anführungszeichen "" benötigt, also
Code:
"http://www.meineSeite.de/gef/banner.gif"
Ich hab mir also einen neuen String zusammengesetzt, der widerum vorne und hinten ein Anführungszeichen hat und diesen tracen lassen, sieht gut aus, also genau der Aufruf, nur mit Anführungszeichen.

Code:
var anf:String = '"';
bannerURLneu = anf + compurl + anf;
Wenn ich nun die Variable in die ich den neuen String geschrieben habe in den External Interface Call einsetze, dann wird dieser Call nicht ausgeführt.

Code:
ExternalInterface.call("JSFunction","parameter1","parameter2","parameter3","parameter4",bannerURLneu);
Das kann ich mit Firebug sehen, ich hab den gleichen call nochmal mit direkt eingegebener URL gemacht, da funktioniert es.

Kann mir einer sagen woran das liegt? Würfel ich irgendwo String und XML durcheinander oder so?

Besten Dank,

Steve
__________________
creative audio and design
electronic dance music
drums & percussion
gfx & web


www.ci-sounds.de - www.stevedragon.com
SteveDragon ist offline   Mit Zitat antworten
Alt 24-11-2010, 10:59   #2 (permalink)
Koda ;)
 
Benutzerbild von badnoob
 
Registriert seit: Oct 2010
Ort: Hannover
Beiträge: 213
trace fuehrt automatisch die toString()-methode aus, daher solltest du das heir versuchen:
PHP-Code:
bannerURLneu '"' compurl.toString() + '"'
badnoob ist offline   Mit Zitat antworten
Alt 24-11-2010, 11:10   #3 (permalink)
backflasher
 
Benutzerbild von SteveDragon
 
Registriert seit: Sep 2001
Ort: Darmstadt
Beiträge: 92
danke, aber das hat leider nicht zum gewünschten Ergebnis geführt... der Call wird immer noch nicht ausgeführt...

Noch ne idee?

Steve
__________________
creative audio and design
electronic dance music
drums & percussion
gfx & web


www.ci-sounds.de - www.stevedragon.com
SteveDragon ist offline   Mit Zitat antworten
Alt 24-11-2010, 11:17   #4 (permalink)
Koda ;)
 
Benutzerbild von badnoob
 
Registriert seit: Oct 2010
Ort: Hannover
Beiträge: 213
also wenn du schreibst, dass der exakt gleiche call, nur mit string statt variable funktioniert, dann muss es so auch funktionieren. wird irgendein error geschmissen oder aehnliches?

schau mal im debugger nach, ob deine url nicht evtl. null ist, oder poste einfach noch nen bisschen mehr quelltext, dann isses einfacher
badnoob ist offline   Mit Zitat antworten
Alt 24-11-2010, 11:34   #5 (permalink)
backflasher
 
Benutzerbild von SteveDragon
 
Registriert seit: Sep 2001
Ort: Darmstadt
Beiträge: 92
Hurra jetzt gehts :-)

ich glaub es hing daran, daß ich bei meinem ersten Versuch die URL nicht nochmal als String gewandelt hatte:

Code:
banner_cdata = banner.Knoten5[0].HTMLResource.toString();
var banner2:XML = new XML(banner_cdata);
var bannerURL = banner2.@SRC.toString();
Danke für die Hilfe trotzdem!

Steve
__________________
creative audio and design
electronic dance music
drums & percussion
gfx & web


www.ci-sounds.de - www.stevedragon.com
SteveDragon ist offline   Mit Zitat antworten
Alt 24-11-2010, 11:37   #6 (permalink)
Koda ;)
 
Benutzerbild von badnoob
 
Registriert seit: Oct 2010
Ort: Hannover
Beiträge: 213
war doch das toString... nur an der falschen stelle
badnoob ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
as3, externalinterface, externalinterface.call, string, xml

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


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Flash CS4] hilfe bei external interface mathiregister Flash Einsteiger 13 10-11-2009 15:18
js function via external interface problem flashnurde ActionScript 2 1 03-05-2007 14:07
External Interface - Leerstring Problem kerthi ActionScript 2 0 23-04-2007 10:27
External Interface // resize deak Flash 8 1 23-03-2007 00:08
External Interface addCallback Problem kerthi ActionScript 2 0 16-03-2007 07:11


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:59 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele