Javascript :: Calling A Namespaced Function From Flash?
Feb 9, 2010Can I use ExternalInterface to call a namespaced JavaScript function?
//JavaScript
foo.bar = function(baz) {}
// AS3
[Code]....
Can I use ExternalInterface to call a namespaced JavaScript function?
//JavaScript
foo.bar = function(baz) {}
// AS3
[Code]....
let suppose i have a object named "data" which has a callBack function named "closeItem" which does something. So i have flash file which has a close button. on click of that i am calling this function which closes this item. So issue is? If i pass this "closeItemFunction" as global function this works fine. but if a pass this function as a "data.closeItem" this doesn;t work throwing some falsh error. so i just wanna ask that "does flash only call gobal scoped javascript function" ??
View 2 RepliesI am refactoring some code. I have a PHP page that contains a MySQL query and stores the result in a PHP variable $my_result. This result is then echoed to a Flash SWF during embedding with SWFObject. I now want to call this PHP page that makes the query from a javascript function like so - one change I have made to the PHP is that instead of storing the result in a variable $my_result I am echoing the result. Javascript function to call the PHP page and make the database query
[Code]....
I'm trying to call a javascript function from within my swf and I'm having a couple of problems which are confussing me somewhat. I'm using this to call the function from flash:
ExternalInterface.call("pgcover"); I know that this is calling the function as I have set it trigger an alert action and this comes up properly. But I don't want the function to trigger an alert, this is just for testing purposes. I instead want it to change the styling on a div. I have set up a test page where I have asigned the function to a button and this works, the div display changes from block to none. When I get the swf to call the function setup to do the same thing, nothing happens.
[Code]...
I have what I think is an easy question but I am having problems with it... Using AS2 / CS3, I am calling a javascript function from Flash, but i would like the value to be a variable and I cant figure out how to do it. the started code is below and I need direction on how to make "myVar" actually a variable.
var myVar = newValue_txt.text;
btnOne.onRelease = function() { getURL("javascript:testFunction('myVar') ");
}
this is a stripped down version of what i am trying to do, but i think it gets the main point across.
I'm trying to make it so a button I use in a swf talks to the swf's container and says...
fscommand ("javascript:changeMap('hodson.htm');")
so that in turn
function changeMap(building) {
document.getElementById('buildingINFO').src=buildi ng;
}
But that doesn't work. I also tried getURL in front of the AS instead of fscommand. basically it's an interactive map where I should be able to click a building and have information appear within a div tag to the right side.
I am trying to call a Javascript function in flash. I am able to call the function using the following code:
Code:
ExternalInterface.call("alert");
I have a flash movie and I want the javascript function to be called when the movie finishes but the code above calls the function at the beginning. Would anyone be able to tell me how I would get this to work the way I want it to?
I've got a flash file that reads some links from an xml config file. These links look like:
<url target="_blank" method="GET"><![CDATA[http://www.google.com]]></url>
Instead of a link, I'd like to call a javascript method that opens up a modal dialog with a list of items. I've tried the following based on some things I found, but I can't get it to work.
<url target="_self" method="GET"><![CDATA[javascript:loadAsModal(#modaldiv, ajaxmenu.jsp?gid=3)]]></url>
and
<url target="_self" method="GET"><script type="text/javascript"><![CDATA[loadAsModal(#modaldiv, ajaxmenu.jsp?gid=3)]]></script></url>
loadAsModal() takes in an empty div that i put on the page, and then the menu.jsp which builds the menu given the group id. I made sure to import all of my js libraries on the page.
I can't get this to work even after making sure to set "allowScriptAccess" to always. I successfully put the flash movie in the browser and call ReceiveDataFromFlashMovie() and print "Got here" but it seems like GetFlashMovieObject() only returns NULL according to an error message in Internet Explorer. Am I missing something? Head of the HTML file:
[Code]....
I have a swf streaming an flv with the default controls from Flash. Is there a way to call a javascript function when the pause button is clicked? And then another when the play button is clicked?
View 2 RepliesI have a simple flash socket that I use to connect to IRC servers. It has an open, close, and send method made available to JS through ExternalInterface, for opening connections, closing connections, and sending messages respectively. The socket calls IRC.io.receive in JS whenever it gets a message, which is parsed by JS into something useful.Unfortunately, whenever any of the flash methods are called from JS, they return a "__ is not a function" error.Here's the (watered down) AS, where IRC is the document class:
public class IRC extends MovieClip {
public static function open(url:String, port:int) {/* code */}
public static function close(port:int) {/* code */}
public static function send(port:int, message:String) {/* code */}
[code]....
Any call to any of the functions registered with ExternalInterface throws a "function does not exist" exception.
Basically I'm trying to call a javascript function which fades in the page content at the end of the flash movie. My javascript is all fine, I've even tested it by placing a button on the page from which it works flawlessly. So I know its definitely my Actionscript which is wrong.
So I'm trying to call a javascript function from the actionscript when the swf movie enters a certain frame. I've placed the following code on a frame in my movie, but nothing, nada, niet.
ActionScript Code:
import flash.external.ExternalInterface;
[code]....
I've searched all over the net and have come across a few examples but being new to Actionscript, I'm finding it quite hard to get my head around this (albeit simple) problem. Basically I'm trying to call a javascript function which fades in the page content at the end of the flash movie. My javascript is all fine, I've even tested it by placing a button on the page from which it works flawlessly. So I know its definitely my Actionscript which is wrong. So I'm trying to call a javascript function from the actionscript when the swf movie enters a certain frame. I've placed the following code on a frame in my movie, but nothing, nada, niet.
[Code]....
I can't get this to work. I need to call a Javascript function from a button in flash. The code is as follows:
on (release) {
getURL("javascript:nameOfMyFunction('whatever.html ')");
}
This is working, so I got the call right. But what I really want to do is have that url (html) to be a variable within flash.
on (release) {
Myurl="[URL]";
getURL("javascript:nameOfMyFunction('Myurl')");
}
This doesn't work. How do you use a flash variable as a javascript function parameter?
So my team's project has an swf embedded in JavaScript, we're actually using java servlet's to create the html/JavaScript. I am attempting to use as3's ExternalInterface to add a callback which would get called in the javascript but everything I have tried will not work.[code]so if there is a missing tag or something that's probably not my problem. NOTE I embed this correctly and get into the swf allowing it to call javascript functions(as3 calls the getStuff fn), using the ExternalInterface, which works but JS->as3 does NOT work ='I cant use the movie object for anything (the return value of getFlashMovie), if I try to use no code after works.The action script code calls the external interface addCallback function correctly(called in a try catch that's how I know)[code]The only things I can think of;
1) The embed code isnt creating the object correctly, since I cant use the movie for anything
2) my swf is being created weird and doesnt allow script access.We are using FlashBuilder to build the swf.
I built a flash website. On one of my buttons, I was planning on loading another webpage with the getUrl script. I'm working with another developer and he wants me to program the button so that when it's clicked it will call a java script function he'll have programed in the webpage.
View 8 RepliesI'm relatively new to Flash and CS4, which we justpurchased. I want to call a JavaScript function in the page from aflash .swf file. I'm having trouble getting it to work. Can someonep me understand what I'm doing wrong?
Actionscript 3 code behind the Flash button:
import flash.external.ExternalInterface;
on (release) {
[code]....
I need to call javascript function from Flash 4 based web application. When I run it in Debug mode it runs perfectly but when I make release build or run same application on other machine it does not call JavaScript function.
[Code]...
I have a SWF that is used to load other swf to it.
each of the loaded swf files has its own button events that try to access javascript functions. The problem is that they can't access the javascript. It never gets to call the functions.
If i run those swf on their own then it works..
what should i do do have embedded swfs to call javascript methods ?
I know I can do this:
Code:
controller.detachButton.onRelease = function()
{
[code].....
I'm trying to get AS to call a javascript function. This is working fine. As a test a changed the js function to trigger an alert.This works and the alert comes up but it forms a loop and I'm not sure you to get it to stop repeating the alert.You can see what I mean at---------------WARNING THIS LINK WILL OPEN AN SWF WHICH WILL CREATE A LOOP WHEN IT CLOSESYOU WILL HAVE TO FORCE QUIT YOUR BROWSER SO MAKE SURE THAT YOU DON'T HAVE ANYTHING IMPORTANT UNSAVED OPEN-
Here is my AS
// Create a movie clip instance.
import flash.external.*;
[code].....
ARCITECHTURE:the way I've set up this Flash doesn't work properly.in my html I load a preloader.swf.this preloader.swf is build with ActionScript in the first frame.this preloader.swf loads a content.swf this content.swf is build with ActionScript in a Document Class...
everything works properly this far.MY PROBLEM:my problem comes when I - using JavaScript - try calling a function in my content.swf the function I try to call is this:
public function playThisMovie(theMovieToPlay:String):void {
var newM:String = theMovieToPlay;
ExternalInterface.call("alert", "the new movie is = "+newM);
}
when calling this function nothing happens, even though I know the function exists..can it be, that I cannot call my function because it is inside my content.swf..and if yes, is there a workaround I can use?
I have a .swf that has to load in a iFrame and needs to call a browser cookie javascript function that lives on the parent page that loads the iFrame.I'm using this:
xternalInterface.call("javascriptFunction");
I need to create a really basic flash video (actionscript 2) where I click on a bit of text which will call a javascript function. I have created a flash video which has a bit of text I converted to a button symbol. I then opened the "Actions" tab and added:
[Code]...
I'm trying to call a function declared with ExternalInterface in a Flash swf, using JavaScript.It worked once, but all of a sudden, it stopped working.I have a debug version of the Flash Player, but no errors occur in Flash.Not even a "Security Sandbox Error" or something. The only error I get is the following error in JavaScript Error: Error in Actionscript. Use a try/catch block to find error.I'm using AS3, exporting for Flash Player 10 and testing on Firefox 3/Safari 4, on a Mac.
View 4 RepliesI got two AS3 functions. One that toggles fullscreen and one that is called with javascript with ExternalInterface that only logs "Hello World". Both works well in the browser, but if I try to call the fullscreen function with javascript the same way, i get an error like this: Error calling method on NPObject! I googled that problem but that only had something to do with same domain access, and sinced it worked with the other function, it has to be something else.
View 2 Replieswe are currently working with a tv site (flash) in which we have included 3 buttons , mini , standard and fullscreen.Mini will resize the browser window into a smaller size , while standard will resize it to the maximum available width and height.The fullscreen will play the video in fullscreen which is a new flash 9 feature.
The mini and standard buttons actually invokes a javascript function which resides in the flash container html page.The javascript code contains the satement window.Resizeto .The problem we are facing is that the functionality seems to behave inconsistently in IE.In IE 6 ,all the 3 buttons works perfectly.But once we touch the scrollbar , then the mini and standard wont work , it shows a javascript "access denied error".This error does not appear when the wmode in flash object tag is made transparent.But if wmode is made transparent , fullscreen wont work.This is given in adobes website.There is no problem in mozilla firefox .In IE7 we have the same problem as in IE6, apart from this mini and standard does not work at ALL when multiple tabs are open.I would like to know if thr is any way we could overide the javascript error and why does the error not appear when wmode is made is transparent ?
Here's the challenge: I have a Flash movie which will be embedded in a page using an unknown DOM ID that I want to be able to identify/store for callback in a JS function. My ideal user flow would be: User clicks button in Flash. Flash pauses any animations / video / sounds / etc. Flash calls an injected JS function to display a page-covering overlay experience. When user closes overlay experience, a callback method on the Flash object is called. Flash resumes playback.
The problem is, when AS3 uses the ExternalInterface.call("functionName", args...) method, there doesn't seem to be a DOM event triggered, and thus it is impossible to tell which object called a JS function, so having a "registerMe()" function doesn't seem to work. Basically, the injected JS function has no way to determine which DOM object to call, because the ID of the Flash object is unknown.
[Code]...
I'd like to call a javascript function from an embedded .swf file. Specifically, I'd like to call a function in one of my externally linked javascript files from within: function loadTrack(){
[Code]...
which is in an .as file which I assume somehow becomes the swf file. How would I go about this and 're-compile' the .as file?
I have a flash embedded in html. And I want keyboard shortcuts like F1, F2, F3. If I use:
[Code]...