Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    flex 4 on linux, eseguire javascript

    Sto provando ad eseguire del javascript con flex 4, ed actionscript 3 ma non viene eseguito niente.

    codice:
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="start();">
        
    	<mx:Script>
    	    
    		<![CDATA[
    			import flash.net.*;
    			import flash.external.ExternalInterface;
    			import flash.html.HTMLLoader;
    			import mx.controls.Alert;
    		     
    			
    				public function start():void {
    			
    					var html:HTMLLoader = new HTMLLoader;
    					html.width = 400;
    					html.height = 200;
    
    					var urlReq:URLRequest = new URLRequest("http://www.google.com");
    
    					html.load(urlReq);
    
    					if(ExternalInterface.available){
    
    					//Alert.show('ExternalInterface available');
    					ExternalInterface.call("alert('This is javascript called by flex on linux')");
    
    					} else {
    
    						Alert.show('ExternalInterface is not available');
    
    					}
    
    
    				}
    
    		]]>
    
    	</mx:Script>
    
    	<mx:Button id="button1" click="start()" label="START!" />
    
    </mx:Application>
    parte e non succede niente. La richiesta a google, non viene neanche eseguita, ho guardato con uno sniffer per le richieste http.
    Che faccio?

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Il codice mi sembra giusto, ma è compilato per lavorare con le librerie di AIR?

  3. #3
    Non ne ho la minima idea, ho solo scaricato flex 4 dal sito di adobe, poi per compilare ho dato il comando:
    codice:
    mxmlc test.mxml
    e mi ha detto che andava bene, poi provo su firefox 3.6, e mi funziona tutto tranne il javascript...

  4. #4
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Devi chiarirti un po' le idee, l'oggetto HTMLLoader è un elemento che funziona solo con AIR, libreria runtime che consente di girare all'interno di un ambiente desktop ma che non funziona sul semplice filmato swf. Se hai solo compilato per farlo funzionare su browser, allora non funzionerà semplicemente perché non può.

  5. #5
    Capito ma a me in realtà interessava solo far funzionare il javascript, che non va
    Eppure ExternalInterface è attivo...

    codice:
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="start();">
        
    	<mx:Script>
    	    
    		<![CDATA[
    			import flash.net.*;
    			import flash.external.ExternalInterface;
    			import mx.controls.Alert;
    		     
    			
    				public function start():void {
    
    					if(ExternalInterface.available){
    
    					        Alert.show('ExternalInterface available');
    					        ExternalInterface.call("alert('This is javascript called by flex on linux')");
    
    					} else {
    
    						Alert.show('ExternalInterface is not available');
    
    					}
    
    
    				}
    
    		]]>
    
    	</mx:Script>
    
    	<mx:Button id="button1" click="start()" label="START!" />
    
    </mx:Application>

  6. #6
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    L'ho provato così come l'hai scritto e a me funziona perfettamente, chiaramente lo devi eseguire all'interno della pagina html, altrimenti non può funzionare.

  7. #7
    Qua c'è qualcosa che non mi quadra, allora io il swf lo richiamo da una pagina html così:
    Codice PHP:

    <html>

            <
    head>
            
                    <
    title>Test.SWF</title>

            </
    head>

            <
    body>

                    <
    embed src="test.swf" width="100%" height="100%" />

            </
    body>

    </
    html
    molto semplice solo per prova, e funziona mi appare l'Alert.show con scritto "ExternalInterface avaiable", però niente popup javascript! cioè non mi appare il messaggio dato da alert("This is flex4 called by javascript on linux"); niente!
    Ma javascript è abilitato nel flex che ho scaricato?
    Tu cosa usi?

    Ho scaricato questo: "http://www.adobe.com/cfusion/entitle...cfm?e=flex4sdk"

    Io cercavo solo un modo semplice di creare un filmato/applicazione flash, che potesse richiamare javascript, su linux, flex è la prima cosa che ho trovato, ma se esistono altri compilatori flash, mi va bene.

  8. #8
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Non cambia nulla ma quel codice html è quanto meno incompleto, se non sbaglio flex insieme all'swf comiplato, crea anche il file html e un js per incorporare il filmato correttamente.

  9. #9
    non c'è nessun html ne js, mi crea solo l'swf.
    Ci deve essere proprio qualcosa che manca, non so' che fare, non conosco flash, sarebbe la mia prima "prova", ma se non posso interagire con il js, allora è un casino.
    Vediamo se trovo una soluzione.

  10. #10
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    Non uso flex per produrre, inoltre sto su win, quindi non sono proprio indicato a dirti cosa flex possa fare, ma sono abbastanza sicuro, conoscendo i prodotti adobe, che ci sia la possibilità di pubblicare l'swf accompagnato dal relativo html+js.
    Qualora non fosse possibile per un qualsiasi motivo, o non riuscissi, puoi usare la FAQ per l'inserimento in una pagina html dell'swf tramite "SWFObject", uno script JS che ti aiuta a inserire il filmato.
    Questo è il link: http://flash.html.it/faq/leggi/1389/...ndo-swfobject/

    Dovresti risolvere in questo modo il primo ostacolo, in modo da dedicarti con più calma e concentrazione al resto.

    Ah, ti ho indicato l'swfobject perché è attualmente il modo più indicato di inserire un filmato swf all'interno di una pagina html, per motivi particolari, legati principalmente all'impossibilità di usare il vecchio codice html (<object>+<embed>) su browser internet explorer, per via del cosiddetto "blocco degli activex", ma andiamo un po' troppo oltre l'argomento del thread a spiegarlo qui.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.