Dado que la mayoría de las autocomplete
sugerencias, incluyendo la respuesta aceptada, no hacer el trabajo en los navegadores web de hoy (encargados de la contraseña es decir, del navegador ignoran autocomplete
), una solución más novedosa es intercambiar entre password
y text
tipos y hacer que el color de fondo que coincida con el color del texto cuando el campo es un campo de texto sin formato, que continúa ocultando la contraseña mientras es un campo de contraseña real cuando el usuario (o un programa como KeePass) ingresa una contraseña. Los navegadores no solicitan guardar contraseñas almacenadas en campos de texto sin formato.
La ventaja de este enfoque es que permite una mejora progresiva y, por lo tanto, no requiere Javascript para que un campo funcione como un campo de contraseña normal (también puede comenzar con un campo de texto sin formato y aplicar el mismo enfoque, pero eso no es realmente HIPAA Compatible con PHI / PII). Este enfoque tampoco depende de formas / campos ocultos que no necesariamente se envían al servidor (porque están ocultos) y algunos de esos trucos tampoco funcionan en varios navegadores modernos.
Complemento jQuery:
https://github.com/cubiclesoft/php-flexforms-modules/blob/master/password-manager/jquery.stoppasswordmanager.js
Código fuente relevante del enlace anterior:
(function($) {
$.fn.StopPasswordManager = function() {
return this.each(function() {
var $this = $(this);
$this.addClass('no-print');
$this.attr('data-background-color', $this.css('background-color'));
$this.css('background-color', $this.css('color'));
$this.attr('type', 'text');
$this.attr('autocomplete', 'off');
$this.focus(function() {
$this.attr('type', 'password');
$this.css('background-color', $this.attr('data-background-color'));
});
$this.blur(function() {
$this.css('background-color', $this.css('color'));
$this.attr('type', 'text');
$this[0].selectionStart = $this[0].selectionEnd;
});
$this.on('keydown', function(e) {
if (e.keyCode == 13)
{
$this.css('background-color', $this.css('color'));
$this.attr('type', 'text');
$this[0].selectionStart = $this[0].selectionEnd;
}
});
});
}
}(jQuery));
Manifestación:
https://barebonescms.com/demos/admin_pack/admin.php
Haga clic en "Agregar entrada" en el menú y luego desplácese hasta la parte inferior de la página para "Módulo: Detener el Administrador de contraseñas".
Descargo de responsabilidad: si bien este enfoque funciona para personas videntes, puede haber problemas con el software del lector de pantalla. Por ejemplo, un lector de pantalla puede leer la contraseña del usuario en voz alta porque ve un campo de texto sin formato. También puede haber otras consecuencias imprevistas de usar el complemento anterior. La alteración de la funcionalidad incorporada del navegador web debe hacerse con moderación con la prueba de una amplia variedad de condiciones y casos extremos.