Mi solución está cerca de lo que Dan previsto por encima .
<script language="javascript" type="text/javascript">
function SwapLabel(id, label, alttype) {
$(id).focus(function() {
if (this.value == label) {
this.value = "";
if (this.type == 'text' && label == 'Password') {
this.type = alttype;
}
}
});
$(id).blur(function() {
if (this.value == "") {
this.value = label;
if (this.type == alttype && label == 'Password') {
this.type = 'text';
}
}
});
}
$(document).ready(function() {
SwapLabel('#UserName', 'Username', '');
SwapLabel('#Password', 'Password', 'password');
});
</script>
Una alternativa en este caso sería omitir el parámetro "etiqueta", y sólo tiene que utilizar el valor "título", que es básicamente lo que hace labelify.js. Puede agregar la parte de etiquetar que solo aplica estos controladores de eventos a todas las entradas de tipo texto si lo desea. O descargar labelify y añadir el siguiente código donde sea necesario:
if (this.type == 'text' && label == 'Password') {
this.type = alttype;
}
if (this.type == 'text' && label == 'Password') {
this.type = alttype;
}
la única ventaja de mi fragmento tiene sobre labelify es que incluye la respuesta a su pregunta original:
Me pregunto si es posible de alguna manera a muestra la etiqueta "Contraseña" como texto (en lugar de ••••) dentro del campo de contraseña?
A menos que esté equivocado, los documentos del complemento no mencionan una contraseña. Rápidamente cambié uno de los tipos de campo a 'contraseña' y todos los personajes cambiaron los puntos. ¿Este complemento funciona con campos de contraseña como se solicitó OP? – megaSteve4
La misma historia aquí. Es solo para campos de texto, no para campos de contraseña. –