2017-05-03 142 views
0

我使用jQuery ui自動完成插件(https://jqueryui.com/autocomplete/)。jQuery vs Safari自動完成

在Safari上我得到兩個自動完成列表:

  • 一個來自jQuery的(預期中,一個波紋管與1項)
  • 一個從瀏覽器(不需要時,一個在頂部有4個項目)

screenshot

我試着使用<input type="text" autocomplete="off">但Safari瀏覽器自動完成仍然出現。

我該怎麼做才能讓它消失?

謝謝!

回答

1

很遺憾,所有主流瀏覽器都停止遵守autocomplete =「off」屬性。

根據MDN根據瀏覽器版本的不同,您可能會有一些運氣將自動填充設置設置爲無效值,但此解決方案可能會被擊中或漏掉。

在某些情況下,即使autocomplete屬性設置爲off,瀏覽器也會不斷提示自動填充值。對於開發人員來說,這種意外的行爲可能會令人費解訣竅真正迫使無自動完成是一個隨機字符串分配給屬性,例如:

autocomplete="nope" 

,一些用戶似乎與成功的另一個解決方法如下。發表評論,讓我知道這是否適合你。

//覆蓋的Safari,Chrome和IE11決定忽略自動完成:關 //在表格想跳過自動完成,更改所有密碼字段中鍵入=私人 //需要的jQuery

$(function() { 
    $('input[type="private"]').focus(function(e){ 
    $(this).prop('type', 'password'); 
    }); 
    $('input[type="private"]').parents('form').submit(function(){ 
    $(this).find('input[type="password"]').hide().prop('type', 'private'); 
    }); 
});