Crea un objeto de evento DHTML que se utilizará para pasar información de contexto de evento al documento contenedor cuando se llame al método fireEvent.
oEvent = Comportamiento.createEventObject()
Nota De forma predeterminada, el método createEventObject tiene un ámbito global y se puede tener acceso a él sin hacer referencia al Id. del controlador de comportamiento. Por ejemplo, en vez de utilizar Comportamiento.createEventObject como se muestra en la sintaxis, se puede llamar a la función como createEventObject. Para obtener más información, consulte el elemento <implements>.
No se puede volver a utilizar el mismo objeto de evento en múltiples llamadas a fireEvent.
El siguiente fragmento se deriva de un hipotético componente de secuencia de comandos de calculadora. Siempre que cambia el resultado, el componente de secuencia de comandos activa un evento onResultChange personalizado en la página y pasa el resultado como una propiedad expandida del objeto de evento.
Nota Es necesario incluir una sección CDATA para hacer opaca la secuencia de comandos del elemento <script>. Para obtener más información, consulte Archivos de componentes de secuencia de comandos y compatibilidad XML.
<component> <implements type="Behavior"> <event name="onResultChange"/> </implements> <script language="JScript"> <![CDATA[ attachEvent("onclick", doCalc); function doCalc() { // Código para realizar los cálculos. Los resultados se // colocan en la variable sResult. oEvent = createEventObject(); oEvent.result = sResult; fireEvent("onResultChange",oEvent); } ]]> </script> </component>
A continuación se muestra el aspecto de la página contenedora. Cuando se activa el evento onResultChange, los resultados del cálculo se extraen de la propiedad expandida result
del objeto window.event de DHTML y se muestran en el elemento resultWindow <DIV>.
<HTML> <HEAD> <xml:namespace prefix="LK" /> <style> LK\:CALC {behavior:url(engine.wsc)} </style> <script language="JScript"> function showResults(){ resultWindow.innerText=window.event.result; } </script> </HEAD> <LK:CALC id="myCalc" onResultChange="showResults()"> <TABLE> <TR> <DIV ID=resultWindow STYLE="border: '.025cm solid gray'" ALIGN=RIGHT>0.</DIV> </TR> <TR> <TD><INPUT TYPE=BUTTON VALUE=" 0 "></TD> <TD><INPUT TYPE=BUTTON VALUE="+/-"></TD> <TD><INPUT TYPE=BUTTON VALUE=" . "></TD> <TD><INPUT TYPE=BUTTON VALUE=" + "></TD> <TD><INPUT TYPE=BUTTON VALUE=" = "></TD> <TR> </TABLE> </LK:CALC> </HTML>
Exponer eventos personalizados en componentes de secuencia de comandos de comportamiento
Ayuda de Javascript y Vbscript para Javascripts.astalaweb.com. |