Activa un evento personalizado.
Comportamiento.fireEvent(sEvent[, oEvent])
Nota De forma predeterminada, las propiedades y métodos que expone el controlador de comportamiento se agregan automáticamente al espacio de nombres global de la secuencia de comandos y se puede tener acceso a ellos sin hacer referencia al Id. del controlador de comportamiento. En este caso, en vez de utilizar Comportamiento.fireEvent como se muestra en la sintaxis, en la secuencia de comandos se puede utilizar la propiedad como fireEvent. 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 al método fireEvent.
El fragmento de componente de secuencia de comandos siguiente se deriva de un ejemplo de 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 le pasa el resultado como una propiedad expandida del objeto event.
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> <public> <event name="onResultChange" /> </public> <implements type="Behavior"> <attach event="onclick" handler="doCalc"); </implements> <script language="JScript"> <![CDATA[ function doCalc(){ // Código para realizar los cálculos. Los resultados se // colocan en la variable sResult. oEvent = createObjectEvent(); 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 <DIV> resultWindow.
<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 | Método fireEvent
Ayuda de Javascript y Vbscript para Javascripts.astalaweb.com. |