2009-04-13 25 views

Respuesta

5

Javascript puede ayudarlo con la detección de navegadores y con la determinación de UserAgent. Use ExternalInterface para hacer que JavaScript hable con su aplicación flex. Aquí hay una ExternalInterface tutorial.

+0

¿Hay alguna manera de hacerlo en Flex? ¿O es la ruta EI mi única opción? – DyreSchlock

+0

AFAIK, no hay una clase Flex incorporada para recuperar datos del navegador directamente. También eche un vistazo a este ejemplo Me inclino a pensar que JS + AS es el camino a seguir. – dirkgently

+0

No tendría sentido exponerlo en Flex, ya que las aplicaciones Flex no están necesariamente alojadas en un navegador. – Tmdean

2

Su javascript:

function determineBrowser() 
{ 
    // do whatever browser checks you prefer here, then return 
    // a value (a string would probably work best) that will indicate 
    // to your flash what browser it is 

    // I'm just gonna copy and paste an extremely 
    // simple one for example purposes 

    if(navigator.appName == "Netscape") 
    { 
     return "Netscape"; 
    } 
    if(navigator.appName == "Microsoft Internet Explorer") 
    { 
     return "Internet Explorer"; 
    } 

    return "Not IE or Netscape"; 
}

el código ActionScript:

import flash.external.ExternalInterface; 

var browser: String = ExternalInterface.call("determineBrowser"); 

Usando lo que hice, cualquiera que sea su función javascript regresa es lo que la variable del navegador en ActionScript será, para que pueda obtener cualquier navegador datos que necesita siempre y cuando el javascript lo determine.

Recomiendo hacerlo un poco más robusto que yo, pero solo quería darle la idea básica en términos suficientemente cortos para ser fácil de digerir!

10

se puede 'incrustar' javascript dentro de código de AS3 así:

var v : String = ExternalInterface.call("function(){return navigator.appVersion+'-'+navigator.appName;}"); 
var t : TextField = new TextField(); 
t.autoSize = TextFieldAutoSize.LEFT;    
addChild(t); 
t.text = v; 

el campo de texto mostrará información Sobre el navegador como este (cromo):

5,0 (de Windows; U; Ventanas NT 5.1; en-US) AppleWebKit/525.19 (KHTML, como Gecko) Chrome/1.0.154.53 Safari/525.19-Netscape

+0

eso no es una mala idea. – DyreSchlock

Cuestiones relacionadas