aboutsummaryrefslogtreecommitdiff
path: root/files/es/web/guide/events/creating_and_triggering_events
diff options
context:
space:
mode:
authorFlorian Dieminger <me@fiji-flo.de>2021-02-11 18:20:58 +0100
committerGitHub <noreply@github.com>2021-02-11 18:20:58 +0100
commit2318b37e3fd17a3e76a29b9be7d1ce82f040c3bb (patch)
tree5e640d40fd69dc380b04e01de981a345e0141ffa /files/es/web/guide/events/creating_and_triggering_events
parent6aa6274d2ad3e22e7f5e69b1d7531a5eaeaf5666 (diff)
parent8a5554c6fae83e92b10c8dbe5b82108cb44fad6c (diff)
downloadtranslated-content-2318b37e3fd17a3e76a29b9be7d1ce82f040c3bb.tar.gz
translated-content-2318b37e3fd17a3e76a29b9be7d1ce82f040c3bb.tar.bz2
translated-content-2318b37e3fd17a3e76a29b9be7d1ce82f040c3bb.zip
Merge pull request #53 from fiji-flo/unslugging-es
Unslugging es
Diffstat (limited to 'files/es/web/guide/events/creating_and_triggering_events')
-rw-r--r--files/es/web/guide/events/creating_and_triggering_events/index.html145
1 files changed, 145 insertions, 0 deletions
diff --git a/files/es/web/guide/events/creating_and_triggering_events/index.html b/files/es/web/guide/events/creating_and_triggering_events/index.html
new file mode 100644
index 0000000000..0b560935a1
--- /dev/null
+++ b/files/es/web/guide/events/creating_and_triggering_events/index.html
@@ -0,0 +1,145 @@
+---
+title: Creación y activación de eventos (Event)
+slug: Web/Guide/Events/Creating_and_triggering_events
+tags:
+ - DOM
+ - Guía
+ - JavaScript
+ - Sintetico
+ - eventos
+translation_of: Web/Guide/Events/Creating_and_triggering_events
+original_slug: Web/Guide/DOM/Events/Creacion_y_Activación_Eventos
+---
+<p>En este artículo se muestra cómo crear y activar eventos DOM. Estos eventos son comunmente llamados eventos sinteticos, a diferencia de los eventos gatillados por el navegador.</p>
+
+<h2 id="Crear_eventos_personalizados">Crear eventos personalizados</h2>
+
+<p>    Los eventos pueden ser creados con el constructor de eventos de la siguiente manera:</p>
+
+<pre class="brush: js">var event = new Event('build');
+
+// Escucha para el evento.
+elem.addEventListener('build', function (e) { ... }, false);
+
+// Disparar event.
+elem.dispatchEvent(event);</pre>
+
+<p>El codigo de ejemplo de arriba usa el metodo <a href="https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/dispatchEvent">EventTarget.dispatchEvent()</a>.   </p>
+
+<p>Este constructor es compatible con la mayoría de los navegadores modernos (con Internet Explorer es la excepción). Para un enfoque más detallado, ver la manera antigua de abajo.</p>
+
+<h3 id="Adición_de_datos_personalizados_con_CustomEvent_()">Adición de datos personalizados con CustomEvent ()</h3>
+
+<p>    Para añadir más datos al objeto de evento, existe la interfaz CustomEvent y la propiedad detalle se puede utilizar para pasar los datos personalizados.<br>
+ <span style="line-height: 1.5;">Por Ejemplo, </span>el evento se puede crear de la siguiente manera<span style="line-height: 1.5;">:</span></p>
+
+<pre class="brush: js">var event = new CustomEvent('build', { 'detail': elem.dataset.time });</pre>
+
+<p>    Esto permitirá tener acceso a los datos adicionales en el escuchador de eventos (<span style="line-height: 19.0909080505371px;">event listener</span>):</p>
+
+<pre class="brush: js">function eventHandler(e) {
+ log('The time is: ' + e.detail);
+}
+</pre>
+
+<h3 id="La_Forma_Antigua">La Forma Antigua</h3>
+
+<p>    El enfoque más para la creación de eventos utiliza APIs inspirados en Java. A continuación se muestra un ejemplo:</p>
+
+<pre class="brush: js">// Creamos el evento.
+var event = document.createEvent('Event');
+
+/* Definimos el nombre del evento que es 'build'.*/
+event.initEvent('build', true, true);
+
+// Asignamos el evento.
+document.addEventListener('build', function (e) {
+ // e.target matches document from above
+}, false);
+
+// target can be any Element or other EventTarget.
+document.dispatchEvent(event);
+
+</pre>
+
+<h2 id="El_disparo_incorporado_eventos">El disparo incorporado eventos</h2>
+
+<p>    Comunmente es deseable disparar un evento desde un elemento hijo, y lograr que el padre lo capture: opcionalmente con datos: </p>
+
+<pre class="brush: js">function simulateClick() {
+ var event = new MouseEvent('click', {
+ 'view': window,
+ 'bubbles': true,
+ 'cancelable': true
+ });
+ var cb = document.getElementById('checkbox');
+ var canceled = !cb.dispatchEvent(event);
+ if (canceled) {
+ // A handler called preventDefault.
+ alert("canceled");
+ } else {
+ // None of the handlers called preventDefault.
+ alert("not canceled");
+ }
+}</pre>
+
+<h2 id="Browser_compatibility" name="Browser_compatibility" style="line-height: 30px; font-size: 2.14285714285714rem;">Compatibilidad con los Navegadores</h2>
+
+<h2 id="sect1"> </h2>
+
+<p>{{CompatibilityTable()}}</p>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th style="line-height: 16px;">Feature</th>
+ <th style="line-height: 16px;">Chrome</th>
+ <th style="line-height: 16px;">Firefox (Gecko)</th>
+ <th style="line-height: 16px;">Internet Explorer</th>
+ <th style="line-height: 16px;">Opera</th>
+ <th style="line-height: 16px;">Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td><code>Event()</code> constructor</td>
+ <td>15</td>
+ <td>11</td>
+ <td>{{ CompatNo() }}</td>
+ <td>11.60</td>
+ <td>6</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th style="line-height: 16px;">Feature</th>
+ <th style="line-height: 16px;">Android</th>
+ <th style="line-height: 16px;">Firefox Mobile (Gecko)</th>
+ <th style="line-height: 16px;">IE Phone</th>
+ <th style="line-height: 16px;">Opera Mobile</th>
+ <th style="line-height: 16px;">Safari Mobile</th>
+ </tr>
+ <tr>
+ <td>Basic support</td>
+ <td>{{ CompatUnknown() }}</td>
+ <td>{{ CompatUnknown() }}</td>
+ <td>{{ CompatUnknown() }}</td>
+ <td>{{ CompatUnknown() }}</td>
+ <td>6</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<h2 id="See_also">See also</h2>
+
+<ul>
+ <li>{{domxref("document.createEvent()")}}</li>
+ <li>{{domxref("Event.initEvent()")}}</li>
+ <li>{{domxref("EventTarget.dispatchEvent()")}}</li>
+ <li>{{domxref("EventTarget.addEventListener()")}}</li>
+</ul>