إن إدخال الفلاش باك المربع المزعوم يعني أن تركيز مربع الإدخال هو دائمًا في البداية. كما هو موضح في الشكل ، عندما أدخل 123456789 ، يتم عرض 987654321 على مربع الإدخال.
لماذا تريد أن تصنع هذا العرض التوضيحي؟ ذلك لأنني واجهته في المشروع. متطلبات المشروع عبارة عن مربعين إدخالان ، أحدهما هو إدخال بترتيب إيجابي والآخر هو إدخال في الفلاش باك. أدناه سوف أكتب أفكار التنفيذ والرمز.
إدخال الفلاش باك:
طالما نضمن أن تركيز مربع الإدخال هو دائمًا في المقام الأول ، يمكننا تحقيق ذلك في كل مرة ندخلها ، أي تكرار.
شفرة:
الوظيفة setPosition (Ctrl ، pos) {// قم بتعيين وظيفة موضع المؤشر if (ctrl.setselectionRange) {ctrl.focus () ؛ ctrl.setselectionRange (pos ، pos) ؛} else if (ctrl.createTextrange) {var range = ctrl.creatextrange () ؛ // إنشاء نطاق مساحة اختيار. collapse (true) ؛ // انقل المؤشر إلى موضع البداية لمجموعة منطقة الاختيار. // قم بتغيير الموضع الذي تنتهي فيه منطقة الاختيار. // قم بتغيير الموضع الذي تبدأ فيه منطقة الاختيار. select () ؛ // تزامن المحتوى المحدد إلى الكائن الحالي}}طالما قمنا بتعيين المعلمة POS إلى 0 ، سيكون الأمر جيدًا.
فيما يلي عرض تجريبي كامل ، والذي ينفذ الحذف العادي وإدخال الفلاش باك.
<! doctype html> <html> <head> <title> </title> <meta http-equiv = "content-type" content = "text/html ؛ charset = utf-8">. {العرض: 200px ؛} </style> <script src = "http://cdn.staticfile.org/jquery/2.1.1-rc2/jquery.min.js type = "text"> </li> <li> <input type = "text"> </li> </ul> </viv> <script> setPosition (ctrl ، pos) {// قم بتعيين وظيفة موضع المؤشر if (ctrl.setSelectionRange) {ctrl.focus () ؛ {var range = ctrl.createTexTrange () ؛ // إنشاء نطاق مساحة اختيار. collapse (true) ؛ // انقل المؤشر إلى موضع البداية لمجموعة منطقة الاختيار. // تغيير الموضع النهائي لمجموعة منطقة الاختيار. // تغيير موضع البداية لمجموعة منطقة الاختيار. SELECT () ؛ // مزامنة المحتوى المحدد للكائن الحالي}} $ ('. elem'). على ('keypress keyup' ، function () {if (event.keycode === 8)بالإضافة إلى ذلك ، يمكنك استخدام الوظيفة ذات الصلة للحصول على موضع التركيز.
وظيفة getPosition (ctrl) {// ie supportvar caretpos = 0 ؛ if (document.selection) {ctrl.focus () ؛ var sel = document.selection.createRange () ؛ sel.movestart ('الحرف' ، -ctrl.value.length) ؛ caretpos = sel.text.length ؛} // firefox supportelse if (ctrl.sestart || Ctrl.SelectionStart ؛ العودة (caretpos) ؛}تلخيص:
من خلال إعداد تركيز إدخال النص والحصول عليه ، يمكننا القيام ببعض المؤثرات الخاصة الأخرى ، مثل حذف كلمة أو متغير كامل ، إلخ.
إذا كان لديك أفكار جيدة حول هذه المقالة ، فيمكنك me ، آمل أن تساعدك هذه المقالة!