Forza il modulo di autocompletamento su iPad

1

Mentre su alcuni siti web, iPad Safari chiede automaticamente di salvare i dati del modulo come Us / Pwd, su altre pagine, non chiede mai lo stesso.

Come possiamo costringerlo a chiedere il salvataggio dei dati del modulo su qualsiasi sito web?

    
posta hmthr 23.07.2011 - 18:50
fonte

1 risposta

2

Aggiungi il seguente bookmarklet a Safari:

javascript:(function()%7Bvar%20ca,cea,cs,df,dfe,i,j,x,y;function%20n(i,what)%7Breturn%20i+%22%20%22+what+((i==1)?%22%22:%22s%22)%7Dca=cea=cs=0;df=document.forms;for(i=0;i%3Cdf.length;++i)%7Bx=df%5Bi%5D;dfe=x.elements;if(x.onsubmit)%7Bx.onsubmit=%22%22;++cs;%7Dif(x.attributes%5B%22autocomplete%22%5D)%7Bx.attributes%5B%22autocomplete%22%5D.value=%22on%22;++ca;%7Dfor(j=0;j%3Cdfe.length;++j)%7By=dfe%5Bj%5D;if(y.attributes%5B%22autocomplete%22%5D)%7By.attributes%5B%22autocomplete%22%5D.value=%22on%22;++cea;%7D%7D%7Dalert(%22Removed%20autocomplete=off%20from%20%22+n(ca,%22form%22)+%22%20and%20from%20%22+n(cea,%22form%20element%22)+%22,%20and%20removed%20onsubmit%20from%20%22+n(cs,%22form%22)+%22.%20After%20you%20type%20your%20password%20and%20submit%20the%20form,%20the%20browser%20will%20offer%20to%20remember%20your%20password.%22)%7D)();

Dovrai sapere come manipolare un segnalibro esistente per incollare questo piccolo programma nel posto in cui un segnalibro ha normalmente l'URL. Questo è esattamente il modo in cui programmi come Instapaper e Pocket e altri usano un bookmarklet (che in realtà è un programma memorizzato come un segnalibro) per cambiare o agire sulla pagina che stai attualmente navigando.

Dal momento che dovresti sempre essere un po 'sospettoso quando qualcuno pubblica un programma per te da eseguire - ecco una versione più chiara che mostra solo un loop su tutti gli elementi e abilita l'autocomplete per ciascuno.

Questo compensa gli sviluppatori web che hanno dimenticato o intenzionalmente non hanno abilitato il completamento automatico.

Lo stesso script di cui sopra, ma ben formattato e senza il wrapper del bookmarklet:

function () {
    var ca, cea, cs, df, dfe, i, j, x, y;

    function n(i, what) {
        return i " "
        what((i == 1) ? "" : "s")
    }
    ca = cea = cs = 0;
    df = document.forms;
    for (i = 0; i < df.length; i) {
        x = df[i];
        dfe = x.elements;
        if (x.onsubmit) {
            x.onsubmit = "";
            cs;
        }
        if (x.attributes["autocomplete"]) {
            x.attributes["autocomplete"].value = "on";
            ca;
        }
        for (j = 0; j < dfe.length; j) {
            y = dfe[j];
            if (y.attributes["autocomplete"]) {
                y.attributes["autocomplete"].value = "on";
                cea;
            }
        }
    }
    alert("Removed autocomplete=off from "
    n(ca, "form")" and from "
    n(cea, "form element")", and removed onsubmit from "
    n(cs, "form")". After you type your password and submit the form, the browser will offer to remember your password.")
}
    
risposta data 08.11.2011 - 16:38
fonte

Leggi altre domande sui tag