Referencia de ActionScript® 3.0 para la plataforma de Adobe® Flash®
Inicio  |  Ocultar lista de paquetes y clases |  Paquetes  |  Clases  |  Novedades  |  Índice  |  Apéndices  |  ¿Por qué hay texto en inglés?
Filtros: Recuperando datos del servidor...
Recuperando datos del servidor...
flash.html 

HTMLHost  - AS3

Paqueteflash.html
Clasepublic class HTMLHost
HerenciaHTMLHost Inheritance Object

Versiones de motor de ejecución: AIR 1.0

Un objeto HTMLHost define los comportamientos de un objeto HTMLLoader en los elementos de la interfaz de usuario que puedan controlarse mediante la definición de diversas propiedades o la llamada a varios métodos del objeto window de la página HTML. Estos métodos y propiedades son:
  • window.blur()
  • window.focus()
  • window.moveBy()
  • window.moveTo()
  • window.location
  • window.close()
  • window.open()
  • window.resizeBy()
  • window.resizeTo()
  • window.status
  • window.document.title

Los métodos de la clase HTMLHost permiten cambiar las propiedades en cada uno de los ajustes de window. Para utilizar esta clase, cree una nueva clase que amplíe la clase HTMLHost (una subclase) y anule los métodos para los que quiera definir comportamientos. Los métodos de la clase HTMLHost controlan las propiedades y métodos de JavaScript del modo siguiente:

Propiedad o método de JavaScriptMétodo HTMLHost
window.blur() windowBlur()
window.focus() windowFocus
window.location updateLocation
window.close() windowClose
window.open() createWindow
window.status updateStatus
window.document.title updateTitle

Para responder a los cambios de los métodos window.moveBy(), window.moveTo(), window.resizeBy() y window.resizeTo(), anule el método set windowRect() de la subclase de HTMLHost.

Cada objetos HTMLHost se puede asociar con, al menos, un objeto HTMLLoader. Al asignar una instancia de HTMLHost a la propiedad htmlHost del objeto HTMLLoader, se establece la relación. Al asignar null a la propiedad htmlHost del objeto HTMLLoader o al definir el objeto HTMLHost como propiedad htmlHost de otro objeto HTMLLoader, se elimina el objeto HTMLHost del primer objeto HTMLLoader.

Ver los ejemplos

Elementos de API relacionados



Propiedades públicas
 PropiedadDefinido por
 Inheritedconstructor : Object
Una referencia a la clase de objeto o función constructora para una instancia de objeto determinada.
Object
      htmlLoader : flash.html:HTMLLoader
[solo lectura] El objeto HTMLLoader al que se aplica este objeto HostControl.
HTMLHost
      windowRect : Rectangle
La propiedad que cambia cuando el código JavaScript de HTMLLoader llama al método window.moveBy(), window.moveTo(), window.resizeBy() o window.resizeTo().
HTMLHost
Métodos públicos
 MétodoDefinido por
  
    HTMLHost(defaultBehaviors:Boolean = true)
Crea un objeto HTMLHost.
HTMLHost
  
La función a la que se llama cuando el código JavaScript del objeto HTMLLoader llama al método window.open().
HTMLHost
 Inherited
Indica si un objeto tiene definida una propiedad especificada.
Object
 Inherited
Indica si hay una instancia de la clase Object en la cadena de prototipo del objeto especificado como parámetro.
Object
 Inherited
Indica si existe la propiedad especificada y si es enumerable.
Object
 Inherited
Establece la disponibilidad de una propiedad dinámica para operaciones de bucle.
Object
 Inherited
Devuelve la representación de cadena de este objeto, con formato según las convenciones específicas de configuración regional.
Object
 Inherited
Devuelve la representación de cadena del objeto especificado.
Object
  
    updateLocation(locationURL:String):void
La función a la que se llama cuando el código JavaScript del objeto HTMLLoader establece la propiedad window.location.
HTMLHost
  
    updateStatus(status:String):void
La función a la que se llama cuando el código JavaScript del objeto HTMLLoader establece la propiedad window.status.
HTMLHost
  
    updateTitle(title:String):void
La función a la que se llama cuando el código JavaScript del objeto HTMLLoader define la propiedad window.document.title o cuando el elemento title cambia, bien por el DOM o por la carga de una nueva página.
HTMLHost
 Inherited
Devuelve el valor simple del objeto especificado.
Object
  
    windowBlur():void
La función a la que se llama cuando el código JavaScript del objeto HTMLLoader llama al método window.blur().
HTMLHost
  
    windowClose():void
La función a la que se llama cuando el código JavaScript del objeto HTMLLoader llama al método window.close().
HTMLHost
  
    windowFocus():void
La función a la que se llama cuando el código JavaScript del objeto HTMLLoader llama al método window.focus().
HTMLHost
Información sobre propiedades
    

htmlLoader

propiedad
htmlLoader:flash.html:HTMLLoader  [solo lectura]

Versiones de motor de ejecución: AIR 1.0

El objeto HTMLLoader al que se aplica este objeto HostControl. La propiedad htmlHost de dicho objeto HTMLLoader se define en este objeto HostControl.



Implementación
    public function get htmlLoader():flash.html:HTMLLoader

Elementos de API relacionados

    

windowRect

propiedad 
windowRect:Rectangle

Versiones de motor de ejecución: AIR 1.0

La propiedad que cambia cuando el código JavaScript de HTMLLoader llama al método window.moveBy(), window.moveTo(), window.resizeBy() o window.resizeTo().

En la subclase de HTMLHost, anule el método set windowRect() para gestionar los nuevos límites de la ventana según sea necesario.



Implementación
    public function get windowRect():Rectangle
    public function set windowRect(value:Rectangle):void
Información sobre constructores
    

HTMLHost

()Información sobre
public function HTMLHost(defaultBehaviors:Boolean = true)

Versiones de motor de ejecución: AIR 1.0

Crea un objeto HTMLHost.

Parámetros
defaultBehaviors:Boolean (default = true) — Indica si se deben proporcionar de forma predeterminada los comportamientos del contenido raíz.
Información sobre métodos

    createWindow

()método
public function createWindow(windowCreateOptions:flash.html:HTMLWindowCreateOptions):flash.html:HTMLLoader

Versiones de motor de ejecución: AIR 1.0

La función a la que se llama cuando el código JavaScript del objeto HTMLLoader llama al método window.open().

De forma predeterminada, una llamada JavaScript al método window.open() de la página HTML de un objeto HTMLLoader no abre un nuevo objeto NativeWindow en tiempo de ejecución. Puede abrir un nuevo objeto NativeWindow en el motor de ejecución creando un nuevo objeto NativeWindow en la anulación del método createWindow de la subclase de la clase HTMLHost.

Parámetros

windowCreateOptions:flash.html:HTMLWindowCreateOptions — Un objeto que contiene las propiedades de la cadena transferida como el parámetro features de la llamada a window.open().

Valor devuelto
flash.html:HTMLLoader — Un objeto HTMLLoader que contiene la nueva página HTML. Lo habitual es crear un nuevo objeto HTMLLoader en este método, añadirlo al escenario de un nuevo objeto NativeWindow y, por último, devolverlo.

    updateLocation

()método 
public function updateLocation(locationURL:String):void

Versiones de motor de ejecución: AIR 1.0

La función a la que se llama cuando el código JavaScript del objeto HTMLLoader establece la propiedad window.location.

Parámetros

locationURL:String — Valor en que se establece la propiedad location de la propiedad window de HTMLLoader.

    updateStatus

()método 
public function updateStatus(status:String):void

Versiones de motor de ejecución: AIR 1.0

La función a la que se llama cuando el código JavaScript del objeto HTMLLoader establece la propiedad window.status.

Parámetros

status:String — Valor en que se establece la propiedad status de la propiedad window de HTMLLoader.

    updateTitle

()método 
public function updateTitle(title:String):void

Versiones de motor de ejecución: AIR 1.0

La función a la que se llama cuando el código JavaScript del objeto HTMLLoader define la propiedad window.document.title o cuando el elemento title cambia, bien por el DOM o por la carga de una nueva página.

Parámetros

title:String — El valor en el que se establece la propiedad window.document.title del objeto HTMLLoader.

    windowBlur

()método 
public function windowBlur():void

Versiones de motor de ejecución: AIR 1.0

La función a la que se llama cuando el código JavaScript del objeto HTMLLoader llama al método window.blur().

    windowClose

()método 
public function windowClose():void

Versiones de motor de ejecución: AIR 1.0

La función a la que se llama cuando el código JavaScript del objeto HTMLLoader llama al método window.close().

De forma predeterminada, una llamada JavaScript al método window.close() en la página HTML de un objeto HTMLLoader cierra las ventanas que contengan el objeto HTMLLoader.

    windowFocus

()método 
public function windowFocus():void

Versiones de motor de ejecución: AIR 1.0

La función a la que se llama cuando el código JavaScript del objeto HTMLLoader llama al método window.focus().

HTMLHost.1.as

El siguiente código define CustomHost, una subclase de HTMLHost. Los métodos de la clase CustomHost anulan los métodos heredados de la clase HTMLHost para definir acciones cuando el código JavaScript de la página HTMLLoader define varias propiedades o llamadas a distintos métodos del objeto window:
package
{
    import flash.html.HTMLHost;
    import flash.html.HTMLLoader;
    import flash.display.NativeWindow;
    import flash.display.NativeWindowInitOptions;
    import flash.display.StageScaleMode;
    import flash.geom.Rectangle;
    import flash.text.TextField;

    public class CustomHost extends HTMLHost
    {
        import flash.html.*;
        public var statusField:TextField;
        public function CustomHost(defaultBehaviors:Boolean=true)
        {
            super(defaultBehaviors);
        }
        override public function windowClose():void
        {
            htmlLoader.stage.window.close();
        }
        override public function createWindow(windowCreateOptions:HTMLWindowCreateOptions):HTMLLoader
        {
            var initOptions:NativeWindowInitOptions = new NativeWindowInitOptions();
            var window:NativeWindow = new NativeWindow(initOptions);
            window.visible = true;
            var htmlLoader2:HTMLLoader = new HTMLLoader();
            htmlLoader2.width = window.width;
            htmlLoader2.height = window.height;
            window.stage.scaleMode = StageScaleMode.NO_SCALE;
            window.stage.addChild(htmlLoader2);
            return htmlLoader2;
        }
        override public function updateLocation(locationURL:String):void
        {
            trace(locationURL);
        }        
        override public function set windowRect(value:Rectangle):void
        {
            htmlLoader.stage.nativeWindow.bounds = value;
        }
        override public function updateStatus(status:String):void
        {
            statusField.text = status;
        }        
        override public function updateTitle(title:String):void
        {
            htmlLoader.stage.nativeWindow.title = title + "- Example Application";
        }
        override public function windowBlur():void
        {
            htmlLoader.alpha = 0.5;
        }
        override public function windowFocus():void
        {
            htmlLoader.alpha = 1;
        }
    }
}
Cree la siguiente clase que añade un objeto HTMLLoader al escenario, así como un objeto TextField llamado statusBar. El objeto HTMLLoader define un objeto CustomHost como su propiedad htmlHost:
package
 {
     import flash.display.Sprite;
 
     public class SimpleHTMLBox extends Sprite
     {
         import flash.html.HTMLHost;
         import flash.html.HTMLLoader;
         import flash.text.TextField;
         import flash.net.URLRequest;
         import CustomHost;
         private var host:CustomHost;
         private var statusField:TextField;
         private var html:HTMLLoader;
         
         public function SimpleHTMLBox()
         {
             html = new HTMLLoader();
             var url:String = "Test.html";
             var urlReq:URLRequest = new URLRequest(url); 
             html.load(urlReq);
             
             host = new CustomHost();
             html.htmlHost = host;
             statusField = new TextField();
             host.statusField = statusField;
             
             configureUI();
         }
         private function configureUI():void
         {
             html.width = 400;
             html.height = 200;
             statusField.width = 400;
             statusField.height = 24;
             statusField.border = true;
             statusField.y = 200;
             
             addChild(html);
             addChild(statusField);                
         }
         
     }
 }

Cree una aplicación de AIR que añade un objeto definido en esta clase al escenario de la ventana principal.

Cree una página HTML llamada Test.html en el directorio de recursos de la aplicación (el directorio que contiene el archivo descriptor de la aplicación) y añádale el siguiente contenido:

<html>
     <head>
         <title>Test</title>
     </head>
     <body>
         <a href="#" onclick="window.open('Test.html')">window.open('Test.html')</a>
         <br/><a href="#" onclick="window.document.location = 'www.adobe.com'">window.document.location = 'www.adobe.com'</a>
         <br/><a href="#" onclick="window.moveBy(6, 12)">moveBy(6, 12)</a>
         <br/><a href="#" onclick="window.close()">window.close()</a>
         <br/><a href="#" onclick="window.blur()">window.blur()</a>
         <br/><a href="#" onclick="window.focus()">window.focus()</a>
         <br/><a href="#" onclick="window.status = new Date().toString()">window.status = new Date().toString()</a>
     </body>
 </html>

Cuando se prueba la aplicación, la clase CustomHost gestiona los ajustes de JavaScript relacionados con la interfaz de usuario en la página HTML.





[ X ]¿Por qué hay texto en inglés?
Cierto contenido de la Referencia de ActionScript 3.0 se muestra en inglés

No todo el contenido de la Referencia de ActionScript 3.0 se traduce a todos los idiomas. Si un elemento del lenguaje no se traduce, aparecerá en inglés. Por ejemplo, la clase ga.controls.HelpBox no está traducida en ningún idioma. Por lo tanto, en la versión en español de la referencia, la clase ga.controls.HelpBox aparecerá en inglés.