Javascript :: How Could The FLEX ExternalInterface.available Check Fail But Still Be Unavailable
Mar 23, 2012
We have several flash objects written in FLEX and being rendered inside a single HTML page.We are using javascript to communicate between the objects and perform other page related operations.
Execution Flow:
In the creationComplete event of the FLEX code of our objects we execute the following (pseudo-ish) code:
if (ExternalInterface.available) {
ExternalInterface.addCallBack("initialize");
ExternalInterface.callMethod("ready");
[code]....
Sometimes the last javascript function outlined is never called. When this happens none of the error alerts appear, the final code is just not executed but everything up to this point has executed successfully.
This happens about 1/100+ times in Chrome/Firefox
This happens about 1/10 times in IE8
This happens about 9/10 times in IE7 (full disclosure - the only machine we have to use for testing this is also much slower)
Since the problem is intermittent and becomes more apparent in slower browsers/machines my suspicion is that it is timing related. If I stop the first flex 'intiailize' call from happening until I click a button in the UI instead of automatically on what is essentially 'creationComplete' everything ALWAYS works.
View 1 Replies
Similar Posts:
Sep 19, 2011
I'm using Javascript to call a method on a Flash movie embedded in an ASPX page using SWFObject. It works fine in Firefox, but Internet Explorer 7 and 8 (so far) claim the object returned by swfobject.getObjectById() "doesn't support this property or method". I've found similar posts on this site and others, but nothing I've tried has fixed this in IE.
ActionScript 3.0 class:
public class Player extends MovieClip {
public function Player() {
Security.allowDomain("http://localhost");
ExternalInterface.addCallback("test", test);
[Code] .....
Internet Explorer complains about the last line in that function, "Object doesn't support this property or method".
View 3 Replies
Nov 27, 2010
Flash has the ExternalInterface class which can communicate to JavaScript running in the browser Can you use the ExternalInterface.available property to check if JavaScript is enabled?
View 2 Replies
Jan 11, 2011
I want to ActionScript3 set HomePage to Google ",so I use following stagement:[code]Then I call this swf in html page,like follows:[code]When I use mouse click,IE8 raise javascript error.'null' is null or not object
View 5 Replies
Jan 20, 2010
I have a simple html doc with a flex app and an iframe side-by-side (using a 1x2 table).There is a button in the flex app that, when clicked, sets the "src" property of the iframe to a URL by using the ExnternalInterface.call method to call a javascript function "doNavClick(url)".Or that's the idea.When I comment out the iframe object declaration in the html, the call to doNavClick works (I pop up an alert to test)....yet when the iframe declaration is present, it doesn't even receive the call. It's as if the iframe has somehow broken the call dispatching mechanism.Is there a workaraound for this?The problematic code is as follows:
--- Main.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
[code].....
View 1 Replies
Dec 5, 2011
Flex:
public function callFromJavaScript():String
{
test.label='dfdsfsdf';
return "1";
}
public function init():void {
[Code]...
I have no clue wich one are crossbrowser compatible (cant install IE to test out)I have tried multiple but i cant get them to work(in any browser), im probably using the wrong id, ive been trial & erroring for a couple of hours but i don't have anything working.(i heard there was a problem with ExternalInterface.addCallback on a local file system?, should i upload the swf? < is the flex code right& problem = javascript/html side?)
View 1 Replies
Dec 7, 2009
I am using the ExternalInterface on Flex 3. We are actually using flex to compress a large amount of DOM data, so this is specifically being used with LARGE data. To further investigate, if there is a limitation, is this universal? (IE. Silverlight) First, let me state that this is being done with an application that was made by inexperienced software engineers. This is an app that we need to buy time by compressing the data so that we can build a long-term solution. We have no other options, unfortunately. Background: This is an application that is actually a web-spreadsheet. Our long term solution is to make a Office Business Application.
View 2 Replies
Aug 7, 2010
I know there have been other questions on getting JavaScript / Flex ExternalInterface to play nicely, but I've what I think is a weird one. It works perfectly in every browser except Safari (on a Mac). Chrome, IE, Firefox - all ok, but Safari, nope it just wont fire.I've copied my code below, can anyone see why it doesn't work in Safari pls ?(the 'are you sure' dialog window appears in Safari but the method in the Flex app just doesn't get called)
Flex code :
if(ExternalInterface.available){
ExternalInterface.addCallback("flexShutdownHandler",flexShutdownHandler);
[code].....
View 1 Replies
Dec 21, 2011
From what Ive seen, most of the examples of using Javascript in Flex are designed for for the full desktop version (or for the browser) and not Flex mobile. For example using ExternalInterface in a Flex mobile project gives the error: Error: Error #2067: The ExternalInterface is not available in this container. ExternalInterface requires Internet Explorer ActiveX, Firefox, Mozilla 1.7.5 and greater, or other browsers that support NPRuntime. Is it possible to call Javascript (such as the Google Maps Javascript API) in a Flex mobile project?
View 1 Replies
Nov 18, 2011
I have a couple of buttons in my flash application that call two different javascript functions. They work in all browsers except IE9 (I haven't tried earlier IEs). My code to call the function is something like this:
ExternalInterface.call(
"myLovelyFunction",
string1, string2);
[Code]....
In IE9, the function does absolutely nothing, but the console complains with:
SCRIPT438: Object doesn't support property or method 'SetReturnValue'
index.php, line 1 character 1
line 1, character 1 is obviously pointing at nothing in particular.
I can make it work fine by switching on compatability view, although the console error doesn't go away.
Is there anything about IE9 that causes this, and more importantly, how do I fix this?
View 2 Replies
Feb 10, 2011
I have a question about the Java Factory; I've read somewhere that: "... the JavaFactory will check if there is already an instance in the scope and return that. If the object is not available then it is instantiated ...", but I don't understand the expression "if the object is not available"?I am having trouble to find and/or assign classes already instantiated (by another class) in the server, to a declared destination.
I'm developing an application in Java: J2EE.I'm running it on a Tomcat 6 server I'm using BlazeDS to communicate with Flex. I'm using the RPC's Remoting Service (through RemoteObjects)There are two java classes that handle Client (Flex) interaction, say ApplicationClass and UserApplicationClass:
ApplicationClass has a reference
(attribute) to a UserApplicationClass
instance
[code]...
View 2 Replies
Jun 23, 2010
I"m a bit confused because FlexUnith 4's behavior. When I use fail() in try-catch body fail method is just ignored.
[Code]....
I suppose this one should fail as there is no way around it, but it succeeds and turns green. Whatam I doing wrong? When i put fail() before try-catch block it fails as it is suposed to. BTW using Flash builder 4.
View 1 Replies
Nov 5, 2010
I am trying to use the ExternalInterface.call function in my ActionScript(2.0) to get a javascript var value set in the wrapping document. The following seems to work in FireFox and in Chrome but, naturally, it does not work in IE(8). getting the value stored at this variable?
var linkPath = ExternalInterface.call("function(){return window.customLinkLocation;}", null);
[Code].....
View 5 Replies
Feb 6, 2012
I am having problems with External interface and IE9. The swf objects play fine but none of the information input is transferred to the cookies that should be set. I have seen that there are other questions similar to this but have not been able to solve my problem using them. THis is the html we are using
<div id="flashcentre">
<object type="application/x-shockwave-flash"data="http://workingflashlink" width="600" height="450">
[Code].....
View 1 Replies
Aug 4, 2010
AdobeTV showed a way to allow Flash to "talk" to an HTML page via javascript using the ExternalInterface method. There seems to be a catch. You need to use the ID of the swf in the parameters to have it all fit together and you can only put the ID="swf" into the IE section of the Dreamweaver generated javascript or into the non-IE section. Putting it in both didn't work and the author mentioned only putting in one of them specifically.Is there a way to do this that would work in both sets of generated Javascript?
View 3 Replies
Nov 4, 2009
This is my AC3 code
private function uploadet( dosya:String ):void {
var uploader:URLRequest = new URLRequest(dosya);
localFile.upload(uploader);
[code].....
View 4 Replies
Dec 6, 2009
I'm looking to call a flash method from a method in javascript and recieve a result:Example:Flash -
ExternalInterface.addCallback("getProgress", getProgress) // Javascript to flash
public function getProgress():void {
ExternalInterface.call("getProgress", progress); // Send progress back to javascript from
[code].....
View 1 Replies
Jun 10, 2010
I have an issue with my ExternalInterface. The way it is currently set up is, on the page load up, a boolean is set to true in JavaScript and then checked by ActionScript constructors (using a timer) until it is true. This marks that JavaScript is ready to get calls from AS3.
At this point, AS3 will add the callback and do some internal stuff, and at the end of the constructor I call JavaScript. So far so good. JavaScript will at this point call a function in AS3 (that was defined in the callback described above), and this is where it all messes up.
On IE this works perfectly fine. On FireFox though, it does not. When I debug it, I see that the javascript function is called but when it tries to call AS3, nothing happens. I also tried to add a timer, but for some reason the function STILL executes straight away (in IE).
[Code]...
View 1 Replies
Jun 15, 2010
I'm trying to use ExternalInterface.addCallback to allow js to call an as3 method. My code is as follows:
AS:
ExternalInterface.addCallback("sendToActionscript", callFromJavaScript);
function callFromJavaScript():void{
circle_mc.gotoAndStop("finish"); [code]....
It's not working. What am I doing wrong?
View 3 Replies
Jan 25, 2011
None of the similar answered questions fixed my problem, so here it goes. I want to call actionscript 3 function from JavaScript but in FF error console it says that the function I'm calling from JS does not exist. It says functions mover and mout are not defined. Here is the JS functions in JS file
[Code]...
View 1 Replies
Mar 11, 2011
I am having a problem with Internet Explorer and various lightbox programs (PrettyPhoto, TopUp, and Bumpbox). Essentially I want to make a call using Flash's ExternalInterface class from a swf that has been loaded into a lightbox. It works in firefox but not in IE (8). Here is my working example using PrettyPhoto and here is my working example using TopUp. When the exact same swf is embedded in the top of the page the ExternalInterface call works fine (you can click it on that page). But when the swf is opened in the lightbox by clicking the image it will not work in IE.
[Code]...
View 1 Replies
Apr 12, 2011
I want to call a function inside a Flash movie from javascript, using the ExternalInterface class. The problem is that to get it to work with Firefox I need to use the embed element and with the rest I have to get the object element. To solve it, I gave different ids to that two elements and depending on the user agent I select one or the other:
function getMovie(movieName) {
alert(navigator.userAgent);
if (navigator.userAgent.indexOf("Firefox") != -1) {
[Code].....
This works, but it is not very elegant and it may not work with other browsers..
View 1 Replies
Jul 20, 2011
I am calling an Actionscript function from JavaScript and it works in all browsers except for IE9. I narrowed it down to the js function that retrieves the movie object:
<script type="text/javascript">
var swf;
...
[Code]....
View 2 Replies
Mar 27, 2009
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 Replies
Oct 26, 2011
I'm trying to call a function in my ActionScript from my JavaScript, I've managed to successfully do this with another flash file but in the current one it's failing for some reason. I'm using jQuery SWFEmbed, this is my JS code:[code]The ExternalInterface.call work, and the trace outputs true, I have no idea what's going on.If you could also tell me how I can pass parameters to a ExternalInterface callback.
View 1 Replies
Jul 22, 2009
I have a chat application that I built using Flex. The application on page load is hidden by setting the <object> in the page height to 0px. I did this because I need to be able to talk to the swf with javascript and setting the object to hidden really does "hide" it. In other words it treats the swf like it is not loaded on the page at all.I have an HTML button on the page that says "chat". When you click the button a couple of things happen. First I show the swf by setting the <object> height to 330px and I also tell the swf what person I am going to be chatting with by passing in a user name variable using javascript.On Windows using FF and IE my javascript can't find the swfobject.getObjectById("myswf") if the <object> height is set to 0px. Sometimes it can't find the swf at all event if height is set to 300px.The javascript calls work perfectly on OS X in any browser and it works on windows using Safari.
View 1 Replies
Jun 1, 2009
i'm currently trying to call a javascript function and pass values to it. but i'm not really familiar in using the addcallback since i only tested on calling a function from flash without passing anything to the function.
Basically, i'm going to retrieve the values of a node from xml. and then i will assign those values to a variable in flash. now what i'm going to do next is pass this value to a javascript parameter..is it done using externalinterface?
I just need to throw the value to the javascript function parameter and no return values to the actionscript. The event is that whenever an image is click, the corresponding value for each image is passed to the javascript function.
[Code]....
View 1 Replies
Jan 7, 2010
Im trying to use JS to send data to my Flash AS2.0 music player with ExternalInterface, except there are no good tutorials or guides on ExternalInterface that I can find. I want to be able to change the current song in the player by clicking a JavaScript link, and on page / window load without clicking, play a default song.
I dont need a super complicated answer on loading sounds in flash, etc., I am just having a lot of difficulties getting JS to send anything to Flash, and when I get that to work - would I need to put some if / else into the flash to determine if the link has been clicked or not?
[Code]....
View 2 Replies
Apr 15, 2010
I'm trying to call a method inside a flash movie from js, every time the mouse leaves the "div". It works on Internet Explorer, but not in firefox. Here is the html script:
<script type="text/javascript">
window.onload = function(e){
init();
}function init(){
document.getElementById('div').onmouseout = function(e) {
[Code] .....
Here is example of the problem, there is an alert for the js and the flash should be able to remove the swf (see a gray background? it works! see a image, flash didn't receive the call): [URL]. This should work with internet explorer / safari / chrome (pc/mac) only firefox seams to reject this.
View 2 Replies
Aug 11, 2010
<script type="text/javascript" src="swfobject/swfobject.js"></script>
<script language="javascript" >
swfobject.registerObject("myId", "10.0.0");
function execute(){
return a;
}
[Code] .....
I have this which is based off of this question: [URL]. However this neither works in firefox and IE. If I embed my flash into the browser like this:
<embed src="helpdeskApp_three.swf" id="flash" quality="high" scale="exactfit" width="800" height="500" name="movie" align="middle" allowscriptaccess="always" type="application/x-shockwave-flash" pluginspage="[URL]"/>
This works in Firefox but not IE. What is the proper way of embedding my flash movie so it works across all browsers?
View 1 Replies