Il completamento automatico = "off" è compatibile con tutti i browser moderni?


84

Ho appena ricevuto l'obbligo di impedire ai browser di salvare i dati inseriti in campi modulo specifici. Sono passati anni da quando mi occupo di sviluppo web e questa è una capacità relativamente nuova. Sono stato in grado di trovare la proprietà del campo del modulo autocomplete = "off", ma non riesco a trovare alcuna documentazione che indichi quali browser lo supportano. Qualcuno può indicarmi la giusta direzione di un grafico degli attributi del modulo e della compatibilità del browser?




2
@camigreenall - non un duplicato; la domanda a cui ti sei collegato ha fornito una risposta su come farlo; quello che ho chiesto era la documentazione della compatibilità del browser.
EmmyS

Risposte:


103

Tieni presente che tutti i principali browser si stanno muovendo per ignorare l'attributo per i campi della password .

Posso solo offrire prove aneddotiche, ma devo ancora imbattermi in un browser che non rispetta autocomplete="off", questa esperienza copre:

  • Firefox 1.5 e versioni successive (Windows e Ubuntu)
  • Opera 6+ (Windows e Ubuntu)
  • Chrome v2 + (Windows e Ubuntu)
  • Epifania 0.8 (ish) (Ubuntu)
  • Midori (non ricordo quale versione)
  • Safari v1 + (Windows)
  • IE 4-8, Windows.

Sono consapevole che gli script Greasemonkey e presumibilmente altri script utente possono disabilitare l' autocompleteimpostazione.

Ci sono un paio di articoli che ho trovato che potrebbero esserti utili:

  1. Come disattivare il completamento automatico dei moduli
  2. Utilizzo del completamento automatico nei moduli html

Grazie per quegli articoli. So che ci sono script che possono disabilitare l'impostazione, ma possiamo fare così tanto. Se qualcuno desidera che il proprio browser salvi le informazioni della carta di credito sul proprio personal computer, non possiamo fare molto per impedirlo. Stiamo davvero cercando di impedire che i dati vengano salvati su macchine condivise.
EmmyS

@EmmyS, no, è vero. Ci vorrebbe un utente abbastanza esperto di tecnologia per prendersi la briga di implementare una soluzione anti-completamento automatico, e ciò che gli utenti fanno con il tuo sito sulle loro macchine dipende da loro, non da te. =)
David dice di reintegrare Monica il

@DavidThomas - Grazie per l'elenco di compatibilità, non sono riuscito a trovarne uno buono da caniuse, w3c o altrove. :) +1
Travis J

1
@EmmyS " Stiamo davvero cercando di impedire che i dati vengano salvati su macchine condivise. " Il modo corretto per farlo è impostare correttamente i browser sulle macchine condivise in modo che non conservino alcuna informazione tra le sessioni.
curioso

1
@curiousguy - sì, è una buona idea se hai il controllo sulle macchine condivise. In quel caso non l'abbiamo fatto.
EmmyS

37

I gestori di password ora ignorano l' autocompleteattributo per i passwordcampi nei principali browser a partire da:

Dovrebbe comunque funzionare bene per la disabilitazione autocompletesui campi del modulo, ma non influisce più sul gestore delle password.


Non è così. Ho appena provato. Anche aggiunto autocomplete="false"al campo del modulo, oltre a uno, che era presente sull'elemento del modulo stesso. Nessun effetto di sorta. Direi che il completamento automatico viene ignorato da tutti i principali browser.
Eugene

6

A partire da Chrome v34, autocomplete="off"ora viene ignorato per impostazione predefinita.

Questa caratteristica alquanto discutibile può essere disabilitata nella configurazione dei flag visitando chrome://flags

http://news.softpedia.com/news/Chrome-34-Seeks-to-Save-All-Your-Passwords-436693.shtml


6
Tieni presente che questa modifica in Chrome influisce solo sui campi della password . I campi senza password rispettano ancora l'attributo autocomplete = "off".
Jordan Rieger

4

Se sei in grado di utilizzare JavaScript e jQuery, puoi posizionarlo al caricamento dell'html:

$('#theform input').val('');

Questo viene utilizzato all'interno di Joomla, che utilizza Mootools - ci sono conflitti con mootools e jquery, quindi non posso farlo. Lo terrò a mente per riferimento futuro, però.
EmmyS

facendo riferimento alla documentazione di mootools puoi fare $$ ('. emptyThisInForm'). each (function (el) {el.value = '';});
ITroubs

1
Questo codice rovinerà le caselle di controllo ei pulsanti di opzione. Ciò che potrebbe essere più elegante è $('#theform')[0].reset()forzarlo di nuovo ai valori predefiniti specificati nell'HTML.
Gabe Martin-Dempesy

1
Per influenzare solo i campi della password, è possibile utilizzare un selettore jQuery più specifico, ad esempio:$( '#theform input:password' ).val('');
John Hascall,

1

Ad eccezione di Maxthon Browser , penso, sono famosi in Cina e si stanno facendo un nome in tutto il mondo. Non trattano molto bene Autotocomplete = off power. Non funzionerà con loro.


Sì, Maxthon non rispetterà autocomplete=off, ma puoi costringerlo a non completare automaticamente il campo impostandoismxfilled='0'
GTCrais


0

In effetti, entrambi i campi nome utente e password non reagiscono al completamento automatico = disattivato in tutti i browser più recenti.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.