Rumah >hujung hadapan web >Tutorial H5 >Pelanggan simulasi web mudah alih menyedari kesan memasukkan kata laluan dalam berbilang kotak [dengan kod]_html5 kemahiran tutorial

Pelanggan simulasi web mudah alih menyedari kesan memasukkan kata laluan dalam berbilang kotak [dengan kod]_html5 kemahiran tutorial

WBOY
WBOYasal
2016-05-16 15:51:501862semak imbas

Saya tidak tahu bagaimana untuk menerangkan tajuk Mari lihat tangkapan skrin terlebih dahulu Kesan umum ialah memasukkan kata laluan dalam kotak.

Idea pelaksanaan awal ialah kotak kecil adalah input jenis kata laluan Setiap kali anda memasukkan digit, ia secara automatik melompat ke digit seterusnya OK pada Android. Ia sangat lancar dan tidak mempunyai pepijat, tetapi pada iOS papan kekunci akan dibuka dan ditutup dengan kerap, yang sangat mempengaruhi pengalaman pengguna. Sebabnya mungkin setiap input akan terus fokus dan kabur Setiap kali fokus akan memaparkan papan kekunci, dan kabur akan menutup papan kekunci, jadi... penyelesaian ini pasti tidak akan berfungsi.

Jika PM berkeras untuk mencapai kesan ini, tidak ada cara~ Tetapi jika anda tidak dapat menahannya, pengalaman pengguna yang buruk akan membuat anda terdiam Siapa mahu kami menjadi front-end~ Jika anda tidak dapat membantu itu, hanya mencari penyelesaian.

Memandangkan banyak masalah disebabkan oleh fokus yang kerap dan kabur, dan ia mestilah kotak kata laluan, maka mengapa tidak gunakan kotak input untuk memasukkannya, dan gunakan kaedah lain untuk mensimulasikan kotak kecil, dan mari kita mulakan. Ini ialah kesan terakhir: http://jsbin.com/neqesiqogu/edit?html,css,js,output

Berikut ialah gaya yang dilaksanakan:

Kod JavaScriptSalin kandungan ke papan keratan
  1. .pwd-box{
  2. lebar:310px;
  3. pelapis-kiri: 1px;
  4. kedudukan: relatif;
  5. sempadan: 1px pepejal #9f9fa0;
  6. jejari sempadan: 3px;
  7. }
  8. .input kotak-pwd[type=
  9. "tel"]{
  10. lebar: 99%;
  11. tinggi: 45px;
  12. warna: lutsinar;
  13. kedudukan: mutlak;
  14. atas: 0;
  15. kiri: 0;
  16. sempadan: tiada;
  17. saiz fon: 18px;
  18. kelegapan: 0;
  19. z-indeks: 1;
  20. jarak huruf: 35px;
  21. }
  22. .input kotak palsu{
  23. lebar: 44px;
  24. tinggi: 48px;
  25. sempadan: tiada;
  26. sempadan-kanan: 1px pepejal #e5e5e5
  27. sejajarkan teks: tengah;
  28. saiz fon: 30px;
  29. }
  30. .input kotak palsu:anak-terakhir(1){
  31. sempadan:tiada;
  32. }
  33. .pwd-box .pwd-input:focus{
  34. //Anda perlu menukar kedudukannya apabila kotak kata laluan difokuskan, jika tidak akan terdapat kursor berkelip pada IOS~
  35. kiri:-1000px;
  36. atas: -100px;
  37. }
  38. Kod JavaScript
  39. Salin kandungan ke papan keratan
    1. var $input = $(".fake-box input");   
    2.             $("#pwd-input").on("input"Funktion() {   
    3.                 var pwd = $(this).val().trim();   
    4.                 {                        $input.eq(""   i   
    5. ""
    6. ).val(pwd[i]);                    }                    $input.each(
    7. function
    8. () {   
    9.                                             
    10. if
    11.  (index >= len) {                            $(this).val(
    12. ""
    13. );                        }   
    14.                 });                    if (len == 6) {   
    15.                     self.sendPackage(pwd);
    16. //发送密码
    17.   
    18.                 }                });  
    19. 大致的思路就是动态监听真实密码框的输入修改小方框内密码框的内容. 其实效果实现不难, 关键是思路还有解决该死的兼容, 完成该效果的时候IOS会有闪动的光标,Android没有,然后找一系列方法去隐藏光标,比如focus时候设置text- Einzug, Farbe, transparent, 但都无济于事, 后来发现淘宝有个办法是Fokus, 到一边去, 因为外层有Überlauf ausgeblendet,完美解决了问题~
    20. 以上这篇移动web模拟客户端实现多方框输入密码效果【附代码】就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家.
    21. 原文地址:http://www.cnblogs.com/hutuzhu/p/5000024.html
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn