Змусити автозаповнення форми зберегти на iPad


1

Хоча на деяких веб-сайтах iPad Safari автоматично просить зберегти дані форми, такі як Us / Pwd, на інших сторінках він ніколи не запитує їх.

Як ми можемо змусити його запитувати збереження даних форми на будь-якому веб-сайті?

Відповіді:


2

Додайте наступну закладку до сафарі:

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)();

Вам потрібно буде знати, як маніпулювати наявною закладкою, щоб вставити цю невелику програму на місце, де закладка зазвичай має URL-адресу. Це саме те, як такі програми, як Instapaper і Pocket та інші, використовують закладку (яка дійсно є програмою, що зберігається як закладку) для зміни або дії на сторінці, яку ви переглядаєте.

Оскільки ви завжди повинні бути трохи підозрілими, коли хтось публікує програму для запуску, - ось більш чітка версія, яка показує, що ми просто перебираємо всі елементи і сліпо включаємо автозаповнення для кожного.

Це компенсує веб-розробників, які забули або навмисно не ввімкнули автозаповнення.


Той самий сценарій, що і вище, але добре відформатований і без обгортки закладок:

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.")
}

2
Чи можете ви додати трохи пояснень стосовно того, якою метою закладки є те, як воно працює? Це допоможе зменшити занепокоєння потенційних користувачів щодо завантаження закладок із більш-менш анонімного джерела.
nohillside

так звичайно ... Я також хотів би зрозуміти, як це використовувати ...
hmthr
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.