摘要:另外的輸入框內(nèi)容是共享的,共享管理密碼中被記住的當(dāng)前站點(diǎn)下的密碼。注意,不能再上識(shí)別,需要做兼容性考慮,在網(wǎng)頁(yè)初始化的時(shí)候處理下就好了,對(duì)于瀏覽器,在標(biāo)簽上使用用后,瀏覽器是不會(huì)提示記住密碼的。
最近在做項(xiàng)目表單部分,發(fā)現(xiàn)選擇chrome記住密碼后,不但點(diǎn)擊記住密碼的頁(yè)面表單,整個(gè)項(xiàng)目的表單都被影響,后多次反復(fù)試用,發(fā)現(xiàn)了幾條規(guī)律,在此記錄并給大家看看,如果有問(wèn)題或者有需要補(bǔ)充的,請(qǐng)留言,我隨時(shí)改。3q
規(guī)則一
記住的密碼,不清緩存,就不會(huì)消失,即便改變了 主表單--被記住的表單 的屬性,此域名下的其他表單依然會(huì)顯示--多發(fā)生在開(kāi)發(fā)階段,發(fā)現(xiàn)修改了屬性,記住的密碼和用戶名依然顯示。
規(guī)則二
先name,后id,有name就按name顯示,否則按照id顯示,顯示的時(shí)候(包括自己以及其他同類(lèi)型input)也按照這個(gè)規(guī)則,尤其是其他同name 或同id 甚至既同name又同id的input先取相同name 的記住值,后取相同id 的記住值
如被記住的input為
現(xiàn)其他頁(yè)面有input如下:
//顯示的是上面第一個(gè),既name 為 user1, id 為user1 的input記住值
//顯示的是上面第二個(gè),既name 為 user2, id 為user2 的input記住值
規(guī)則三
關(guān)于type=password 的input,當(dāng)chrome發(fā)現(xiàn)跳轉(zhuǎn)的下一個(gè)頁(yè)面有type=password的時(shí)候,是不會(huì)彈出 記住密碼 彈窗的,所以這里的跳轉(zhuǎn)地址很重要,跳轉(zhuǎn)的下個(gè)頁(yè)面有password 的input的話,chrome不會(huì)彈窗,跳轉(zhuǎn)的下個(gè)頁(yè)面沒(méi)有的話,就會(huì)彈出 --- 此種情況只有在form表單提交,且action中填寫(xiě)的只是靜態(tài)html,并沒(méi)有請(qǐng)求接口的時(shí)候會(huì)這樣。另外password 的輸入框內(nèi)容是共享的,共享管理密碼中被記住的當(dāng)前站點(diǎn)下的密碼。不受name與id的影響
規(guī)則四
type=password 的 DOM 上面最近的input(type為 text或者email居多,如果上面是隱藏域,即便隱藏域中有默認(rèn)值,也會(huì)依次往上查找)默認(rèn)被chrome認(rèn)為是password 的user名被保存下來(lái),在 chrome 設(shè)置中的 管理密碼 彈窗上可以一目了然的看清楚,記住密碼的原理是按照 域名 + user + password 的形式記住的
規(guī)則五
即便主表單是被記住的,如果主表單沒(méi)有name 或id,后期依然不能顯示,然而被記住的密碼在其他同站點(diǎn)下表單同類(lèi)型的input會(huì)顯示
如 主表單 index.html 即便只有user 沒(méi)有name 和id ,password框有name,也會(huì)如此
//記住后不顯示
//記住后不顯示
附表單 password.html
//記住后顯示
規(guī)則六
開(kāi)發(fā)過(guò)程中會(huì)遇到的坑,是記住密碼后。再改代碼,依然發(fā)現(xiàn)記住的密碼顯示,于是以為修改的代碼是有效或無(wú)效的,其實(shí)記住的是之前的,所以每次修改代碼,需要清空所有緩存及記住的密碼,比如 主表單 中 user的input 的類(lèi)型email, name 為 user,輸入內(nèi)容提交表單記住密碼后,再刪掉name或者修改name,使其不為user,當(dāng)加載到 email 的input 并且 name=user 的時(shí)候,雙擊,依然顯示之前記住的內(nèi)容
規(guī)則七
類(lèi)型不相同的表單域,只要name 或者id 與之相同,依然會(huì)顯示
如:主表單 index.html
附表單 email.html
//顯示
//顯示
//顯示
當(dāng)主表單被記住后, email.html 中第一個(gè)input雙擊后,依然顯示了主表單記住的內(nèi)容
因?yàn)?email類(lèi)型的輸入框是h5中新加入成員,強(qiáng)烈懷疑,本質(zhì)其實(shí)是text,只不過(guò)為了開(kāi)發(fā)方便,區(qū)分開(kāi)來(lái)的,在做郵箱類(lèi)型驗(yàn)證的時(shí)候能派上用場(chǎng),此處待查
規(guī)則八
記住密碼與其他輸入域不同,沒(méi)有彈窗選擇記住密碼,輸入域依然會(huì)記住曾經(jīng)輸入的內(nèi)容,而記住密碼不同,是不會(huì)顯示的
規(guī)則九--摘抄網(wǎng)上一段處理方式
如何禁用Chrome谷歌瀏覽器自動(dòng)保存密碼的提示?
在網(wǎng)頁(yè)開(kāi)發(fā)中,在表單中加入autocomplete="off"后,IE和FF不會(huì)提示保存密碼,但是用Chrome瀏覽器登錄系統(tǒng)時(shí),會(huì)彈出自動(dòng)保存密碼的提示,從安全的角度考慮,需要禁止瀏覽器的這個(gè)功能,提升系統(tǒng)安全性。
大部分瀏覽器都是根據(jù)表單域的type="password"來(lái)判斷密碼域的,所以針對(duì)這種情況可以采取“動(dòng)態(tài)設(shè)置密碼域”的方法:
復(fù)制代碼 代碼如下:
解釋?zhuān)寒?dāng)這個(gè)文檔框獲取焦點(diǎn)時(shí)才將其變成密碼域。
實(shí)測(cè)該方法簡(jiǎn)單有效,可以禁用Chrome瀏覽器提示保存密碼的提示框。
注意,onfocus="this.type="password""不能再I(mǎi)E上識(shí)別,需要做兼容性考慮,在網(wǎng)頁(yè)初始化的時(shí)候處理下就好了,對(duì)于IE瀏覽器,在input標(biāo)簽上使用用type="password" autocomplete="off"后,瀏覽器是不會(huì)提示記住密碼的。
將autocomplete="off"屬性放入表單form中時(shí),firefox 依然顯示彈窗詢問(wèn)是否記住密碼,然而即便記住了,依然在表單中不顯示,否則記住的信息會(huì)默認(rèn)填充在表單中,即便刷新仍然無(wú)效
而chrome的處理方式 為只限制其他輸入域的內(nèi)容不顯示,記住密碼彈窗正常彈出,記住密碼的兩個(gè)關(guān)鍵輸入域---被chrome記住的user和password,也依然會(huì)默認(rèn)顯示在輸入框中
但很顯然 這句話是有效的,因?yàn)楫?dāng)前表單中沒(méi)有type=password 的輸入框,chrome是不會(huì)彈窗顯示提醒記住密碼的
疑問(wèn):自己新建的demo中,除非使用input type=submit 或 button 或使用 $("form").submit() 總之,一定要表單提交,才會(huì)彈出彈窗提示記住密碼,使用
submit 偽提交,完成ajax傳輸數(shù)據(jù)后跳轉(zhuǎn)頁(yè)面,是不會(huì)彈窗提示記住密碼的,然而公司的項(xiàng)目也是使用了a標(biāo)簽,好奇怪,后天回公司看下
答案:不管是form表單提交還是ajax(不管是否登錄成功),都會(huì)彈出 記住密碼
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/80370.html
摘要:另外的輸入框內(nèi)容是共享的,共享管理密碼中被記住的當(dāng)前站點(diǎn)下的密碼。注意,不能再上識(shí)別,需要做兼容性考慮,在網(wǎng)頁(yè)初始化的時(shí)候處理下就好了,對(duì)于瀏覽器,在標(biāo)簽上使用用后,瀏覽器是不會(huì)提示記住密碼的。 最近在做項(xiàng)目表單部分,發(fā)現(xiàn)選擇chrome記住密碼后,不但點(diǎn)擊記住密碼的頁(yè)面表單,整個(gè)項(xiàng)目的表單都被影響,后多次反復(fù)試用,發(fā)現(xiàn)了幾條規(guī)律,在此記錄并給大家看看,如果有問(wèn)題或者有需要補(bǔ)充的,請(qǐng)留...
摘要:另外的輸入框內(nèi)容是共享的,共享管理密碼中被記住的當(dāng)前站點(diǎn)下的密碼。注意,不能再上識(shí)別,需要做兼容性考慮,在網(wǎng)頁(yè)初始化的時(shí)候處理下就好了,對(duì)于瀏覽器,在標(biāo)簽上使用用后,瀏覽器是不會(huì)提示記住密碼的。 最近在做項(xiàng)目表單部分,發(fā)現(xiàn)選擇chrome記住密碼后,不但點(diǎn)擊記住密碼的頁(yè)面表單,整個(gè)項(xiàng)目的表單都被影響,后多次反復(fù)試用,發(fā)現(xiàn)了幾條規(guī)律,在此記錄并給大家看看,如果有問(wèn)題或者有需要補(bǔ)充的,請(qǐng)留...
摘要:如何建立一個(gè)安全的記住我功能有這樣一個(gè)場(chǎng)景有個(gè)用戶初訪并登錄了你的網(wǎng)站,然而第二天他又來(lái)了,卻必須再次登錄。因此,應(yīng)該意識(shí)到對(duì)于如何建立記住我功能上的真正誤解,下面我們?cè)賮?lái)看看良性實(shí)踐。 如何建立一個(gè)安全的記住我功能 有這樣一個(gè)場(chǎng)景——有個(gè)用戶初訪并登錄了你的網(wǎng)站,然而第二天他又來(lái)了,卻必須再次登錄。于是就有了記住我這樣的功能來(lái)方便用戶使用,然而有一件不言自明的事情,那就是這種認(rèn)證狀...
摘要:讓看不見(jiàn),而不是直接,如果直接,有些瀏覽器則不生效,比如谷歌修改屬性將表單輸入設(shè)為可讀模式,瀏覽器自動(dòng)填充就失效了,在焦點(diǎn)在該表單輸入的時(shí)候再將可讀屬性移除。 問(wèn)題描述 話說(shuō)有一天,我如往常一樣打開(kāi)我的開(kāi)發(fā)網(wǎng)站進(jìn)行登錄操作。瀏覽器很平常的在我們進(jìn)行登錄操作之后詢問(wèn)我是否需要記住密碼,懶惰如我點(diǎn)擊了記住密碼。一切都很正常的進(jìn)行著,沒(méi)有什么異常發(fā)生。然而,問(wèn)題就出現(xiàn)了。當(dāng)我打開(kāi)一個(gè)新建用戶...
摘要:讓看不見(jiàn),而不是直接,如果直接,有些瀏覽器則不生效,比如谷歌修改屬性將表單輸入設(shè)為可讀模式,瀏覽器自動(dòng)填充就失效了,在焦點(diǎn)在該表單輸入的時(shí)候再將可讀屬性移除。 問(wèn)題描述 話說(shuō)有一天,我如往常一樣打開(kāi)我的開(kāi)發(fā)網(wǎng)站進(jìn)行登錄操作。瀏覽器很平常的在我們進(jìn)行登錄操作之后詢問(wèn)我是否需要記住密碼,懶惰如我點(diǎn)擊了記住密碼。一切都很正常的進(jìn)行著,沒(méi)有什么異常發(fā)生。然而,問(wèn)題就出現(xiàn)了。當(dāng)我打開(kāi)一個(gè)新建用戶...
閱讀 2725·2021-11-08 13:16
閱讀 2401·2021-10-18 13:30
閱讀 2272·2021-09-27 13:35
閱讀 2025·2019-08-30 15:55
閱讀 2475·2019-08-30 13:22
閱讀 616·2019-08-30 11:24
閱讀 2106·2019-08-29 12:33
閱讀 1840·2019-08-26 12:10