ringkasan:
Sekarang ada persyaratan seperti yang ditunjukkan pada gambar. Ketika pengguna memeriksa kotak centang show plaintext, ia perlu menampilkan kata sandi yang dimasukkan oleh pengguna di plaintext. Ketika cek dihapus, ia harus kembali ke ciphertext. Pada awalnya, ia harus memodifikasi jenis kotak input untuk memutuskan apakah akan menampilkan plaintext atau ciphertext. Dia menggunakan attr jQuery untuk melakukan percobaan. Hasil tes adalah Chrome, Firefox, dan IE9+, dan kesalahan akan dilaporkan di bawah IE8. Saya menemukan alasannya. Tidak diizinkan untuk memodifikasi atribut tipe input di IE8, dan akhirnya saya memiliki ide yang berbeda untuk mengimplementasikannya.
Ketika tampilan plaintext diperiksa, kotak input diganti dengan type = "text". Ketika kotak input tidak dicentang, kode tersebut adalah sebagai berikut:
<! Doctype html> <html> <head> <itement> </title> <meta http-equiv = "konten-tipe" content = "text/html; charset = utf-8"> <skrip src = "jquery.min.js"> </skrip> </head> <cript> <body id = "PASS"> </script> </head> <wead> <body id = "PASS"> </script> </head> <wead> <body> type = "password"> </span> <label> <input type = "centang kotak" id = "show-password"> show plaintext </label> <script> $ ('#show-password'). klik (function () {var inp, cname, val; if (ini. inp.val (); $ ('#pass'). html ('<input name = "'+cname+'" value = "'+val+'" type = "text">');} else {inp = $ ('#pass'). Anak -anak ('input'); cname = inp.attr ('name'); inp.val (); $ ('#pass'). html ('<input name = "'+cname+'" value = "'+val+'" "type =" password ">');}}); </script> </body> </html>Meringkaskan:
Artikel ini tidak memiliki konten teknis, tetapi interaksi semacam ini masih ada. Saya terutama mempertimbangkan masalah kompatibilitas di bawah IE8. Jika Anda memiliki interaksi semacam ini dalam proyek Anda, Anda dapat merujuknya, atau jika Anda memiliki cara yang lebih baik untuk membaginya dengan saya.