ฉันกำลังเขียนโค้ดแอปโดยใช้ jQuery, jqTouch และ phonegap และพบปัญหาถาวรซึ่งเกิดขึ้นเมื่อผู้ใช้ส่งแบบฟอร์มโดยใช้ปุ่ม Go บนซอฟต์คีย์บอร์ด
แม้ว่าจะเป็นเรื่องง่ายที่จะทำให้เคอร์เซอร์ย้ายไปยังองค์ประกอบการป้อนข้อมูลแบบฟอร์มที่เหมาะสมโดยใช้$('#input_element_id').focus()
การเน้นโครงร่างสีส้มจะกลับไปที่องค์ประกอบอินพุตสุดท้ายในฟอร์มเสมอ (ไฮไลต์ไม่ปรากฏขึ้นเมื่อส่งแบบฟอร์มโดยใช้ปุ่มส่งแบบฟอร์ม)
สิ่งที่ฉันต้องการคือหาวิธีปิดการใช้งานไฮไลต์สีส้มโดยสมบูรณ์ไม่เช่นนั้นให้ย้ายไปที่องค์ประกอบอินพุตเดียวกันกับเคอร์เซอร์
จนถึงตอนนี้ฉันได้ลองเพิ่มสิ่งต่อไปนี้ใน CSS แล้ว:
.class_id:focus {
outline: none;
}
สิ่งนี้ใช้งานได้ใน Chrome แต่ไม่ใช่บนโปรแกรมจำลองหรือบนโทรศัพท์ของฉัน ฉันได้ลองแก้ไข jqTouch theme.css
เพื่ออ่าน:
ul li input[type="text"] {
-webkit-tap-highlight-color: rgba(0, 0, 0, 0); and
-webkit-focus-ring-color: rgba(0, 0, 0, 0);
}
โดยไม่มีผลกระทบ ฉันได้ลองใช้ส่วนเพิ่มเติมต่อไปนี้ในAndroidManifest.xml
ไฟล์แล้ว:
android:imeOptions="actionNone"
android:imeOptions="actionSend|flagNoEnterAction"
android:imeOptions="actionGo|flagNoEnterAction"
ไม่มีผลใด ๆ
อัปเดต: ฉันได้ทำการแก้ไขปัญหาเพิ่มเติมแล้วและจนถึงปัจจุบันพบว่า:
คุณสมบัติเค้าร่างใช้งานได้บน Chrome เท่านั้นไม่ใช่บนเบราว์เซอร์ Android
-webkit-tap-highlight-color
คุณสมบัติไม่เป็นจริงในการทำงานบนเบราว์เซอร์ของ Android แต่ไม่ได้บน Chrome ปิดใช้งานไฮไลต์ที่โฟกัสเช่นเดียวกับการแตะ-webkit-focus-ring-color
คุณสมบัติดูเหมือนจะไม่ทำงานในเบราว์เซอร์