door moises veliz 14 jaren geleden
810
Meer zoals dit
<div id="contenidos" style="width:150px; height:60px; border:thin solid silver"
onmouseover="document.getElementById('contenidos').style.borderColor='black';"
onmouseout="document.getElementById('contenidos').style.borderColor='silver';">
Sección de contenidos...
</div>
El código anterior es demasiado largo y demasiado propenso a cometer errores.
<div id="contenidos" style="width:150px; height:60px; border:thin solid silver"
onmouseover="this.style.borderColor='black';"
onmouseout="this.style.borderColor='silver';">
Sección de contenidos...
</div>
document.getElementById("pinchable").onclick = muestraMensaje;
Una de las formas más sencillas de asegurar que cierto código se va aejecutar después de que la página se cargue por completo es utilizar el evento onload
window.onload = function() {
document.getElementById("pinchable").onclick = muestraMensaje;
}
El único inconveniente de este método es que la página se debe cargar completamenteantes de que se puedan utilizar las funciones DOM que asignan los manejadores a loselementos XHTML.
La gran ventaja de este método es que el código XHTML resultante es muy "limpio", yaque no se mezcla con el código JavaScript
Si se añaden los paréntesis después del nombre de la función, en realidad se estáejecutando la función y guardando el valor devuelto por la función en la propiedadonclick de elemento.
// Asignar una función externa a un evento de un elemento
document.getElementById("pinchable").onclick = muestraMensaje;
// Ejecutar una función y guardar su resultado en una propiedad de un elemento
document.getElementById("pinchable").onclick = muestraMensaje();
Asignar la función externa al evento correspondiente en el elemento deseado
Crear una función de JavaScript encargada de manejar el evento
Asignar un identificador único al elemento XHTML mediante el atributo id
// Función externa
function muestraMensaje() {
alert('Gracias por pinchar');
}
// Asignar la función externa al elemento
document.getElementById("pinchable").onclick = muestraMensaje;
// Elemento XHTML
<input id="pinchable" type="button" value="Pinchame y verás" />
function resalta(elemento) {
switch(elemento.style.borderColor) {
case 'silver':
case 'silver silver silver silver':
case '#c0c0c0':
elemento.style.borderColor = 'black';
break;
case 'black':
case 'black black black black':
case '#000000':
elemento.style.borderColor = 'silver';
break;
}
}
<div style="width:150px; height:60px; border:thin solid silver"
onmouseover="resalta(this)" onmouseout="resalta(this)">
Sección de contenidos...
</div>
function muestraMensaje() {
alert('Gracias por pinchar');
}
<input type="button" value="Pinchame y verás" onclick="muestraMensaje()" />
<input type="button" value="Pinchame y verás" onclick="alert('Gracias por
pinchar');" />
,
Elementos de formulario y
Todos los elementos
,