يمكن أن يكون تجنب النقرات غير المرغوب فيها على عنصر صفحة الويب ميزة مفيدة للغاية. يمكن أن يساعد ذلك في منع نقرات المستخدم العرضية ، خاصة في الحالات التي قد تتسبب فيها النقرة في إجراءات غير مرغوب فيها أو يكون لها عواقب غير متوقعة.
في جافا سكريبت ، هناك عدة طرق لمنع النقر على عنصر. يمكنك استخدام الأحداث القياسية مثل الماوس واللمس ، أو تطبيق طرق محددة لتعطيل النقر فقط على عناصر معينة.
واحدة من الطرق الأكثر شعبية لمنع النقر هو استخدام طريقة بريفنتدفولت (). يسمح لك بإلغاء السلوك القياسي لعنصر ما عند حدوث حدث. على سبيل المثال ، يمكنك كتابة طريقة إلى معالج الأحداث انقر فوق ودعوة بريفينتدفولت(). يمكنك كتابة طريقة إلى معالج الحدث انقر واستدعاء طريقة بريفنتدفولت داخله. وبالتالي ، سيتم حظر النقر على العنصر تماما.
مثال:
عنصر كونست = وثيقة.جيتليمينتبيد ("مياليمنت");
عنصر.أدفنتليستينر ("انقر" ، وظيفة (الحدث) {
حدث.منعالافتراضي();
});
في هذا المثال ، نحصل على عنصر حسب المعرف ونضيف إليه معالج حدث نقرة. داخل المعالج ، نسمي طريقة الوقاية الافتراضية () ، والتي تلغي السلوك القياسي للعنصر ، وبالتالي تحظر النقر عليه.
- كيفية تعطيل النقر على عنصر شبيبة: تعليمات بسيطة وأمثلة مفيدة
- 1. باستخدام خصائص كس للمؤشر الأحداث
- 2. باستخدام جافا سكريبت الحدث بريفنتدفولت()
- 3. باستخدام سمة أونكليك
- 4. باستخدام نمط المؤشر
- طرق حظر النقرات في جافا سكريبت
- تعطيل حدث النقر
- باستخدام نمط المغلق
- إضافة السمة المعطلة
- أمثلة الاستخدام
- حظر النقر على الزر
- باستخدام السمة المعطلة
- باستخدام جافا سكريبت
- باستخدام كس
- تعطيل الارتباط عند النقر عليه
- 1. باستخدام جافا سكريبت
- 2. باستخدام كس
- سؤال وجواب
- كيف يمكنني منع النقر على عنصر في جافا سكريبت?
- هل من الممكن منع النقر على عنصر مرة واحدة فقط?
- ما هو الفرق بين أساليب الحدث.منع الافتراضية () والعودة كاذبة?
- كيف يمكنني منع النقر على جميع عناصر فئة معينة?
- هل من الممكن منع النقر على عنصر فقط لمجموعة معينة من المستخدمين?
كيفية تعطيل النقر على عنصر شبيبة: تعليمات بسيطة وأمثلة مفيدة
يمكن أن يكون تعطيل نقرات العناصر في جافا سكريبت مفيدا في مواقف مختلفة. على سبيل المثال ، إذا كنت تريد منع المستخدم من التفاعل مع عنصر معين أو تنفيذ بعض الإجراءات عند النقر فوقه. في هذه المقالة ، سنلقي نظرة على عدة طرق لتعطيل النقر فوق عنصر في جافا سكريبت.
1. باستخدام خصائص كس للمؤشر الأحداث
- أضف شفرة جافا سكريبت التالية لتعطيل النقر:
عنصر.أسلوب.نقطة الأحداث = "لا شيء";
حدث.منعالافتراضي();
- 3. باستخدام سمة أونكليك
إنشاء عنصر مع السمة أونكليك:
ادفعني
إزالة السمة أونكليك باستخدام جافا سكريبت:
- يمكنك أيضا استخدام مؤشر نمط المؤشر: غير مسموح به; للإشارة بصريا إلى أن النقرة معطلة:
ادفعني
أضف رمز كس التالي لتعيين نمط المؤشر:
- جافا سكريبت يسمح لك بالتراجع عن الإجراء الافتراضي الذي يحدث عند النقر فوق عنصر.
- حدث.التوقف عن الانتشار();
});
- في هذا المثال ، عند النقر فوق عنصر يحمل المعرف" النخاع " ، لن يتم تمرير الحدث إلى عناصر أخرى.
- تعطيل نقرة:
إذا كنت بحاجة إلى تعطيل القدرة على النقر فوق عنصر تماما ، فيمكنك التقديم
السمة المعطلة
أو قم بتغيير نمط العنصر بحيث يبدو غير نشط. على سبيل المثال:
وثيقة.جيتليمينتبيد ("مياليمنت").معطل = صحيح;
أو
وثيقة.جيتليمينتبيد ("مياليمنت").أسلوب.نقطة الأحداث = "لا شيء";
في كلتا الحالتين ، سيتم تعطيل النقر فوق العنصر.
هذه ليست سوى بعض الطرق التي يمكن استخدامها لحظر النقرات في جافا سكريبت. اختر الطريقة الأنسب حسب حالتك المحددة.
تعطيل حدث النقر
يعد حدث النقر أحد أكثر الأحداث شيوعا وفائدة في جافا سكريبت. يسمح للمستخدم بالتفاعل مع عناصر صفحة الويب عن طريق النقر بالماوس. ومع ذلك ، في بعض الأحيان يكون من الضروري تعطيل حدث النقر لعنصر معين أو مجموعة من العناصر. في هذه الحالة ، يمكنك استخدام عدة طرق.
1. باستخدام بريفنتدفولت()
طريقة طريقة بريفنتدفولت () هي واحدة من الطرق الرئيسية للكائن الحدث في جافا سكريبت. يسمح لك بإلغاء الإجراء الافتراضي المرتبط بتنفيذ الحدث. لتعطيل الحدث انقر فوق ، يمكنك استخدام الأسلوب بريفنتديفولت () في معالج الحدث للعنصر المطلوب:
حدد العنصر الذي تريد تعطيل حدث النقر عليه.
إنشاء معالج حدث للعنصر.
داخل المعالج ، استدعاء طريقة بريفنتدفولت () من كائن الحدث.
مثال:
عنصر كونست = وثيقة.كيريسيليكتور ('.تعطيل-انقر');
عنصر.أدفنتليستينر ('انقر' ، (الحدث) = > {
حدث.منعالافتراضي();
});
2. استخدام خاصية المؤشر-الأحداث
الخاصية مؤشر الأحداث في كس يسمح لك للسيطرة على قدرة عنصر ليكون هدفا لمؤشر الماوس. قيمة لا شيء لهذه الخاصية تعطيل تماما جميع أحداث المؤشر للعنصر وأحفاده. لتعطيل حدث النقر لعنصر ، أضف نمطا إليه بالقيمة المحددة لخاصية أحداث المؤشر:
.تعطيل-انقر {
مؤشر الأحداث: لا شيء;
}
إذا كنت بحاجة إلى تعطيل حدث النقر فقط لبعض العناصر داخل العنصر الأصل ، فيمكنك استخدام محدد الطفل:
.الأصل-العنصر .تعطيل-انقر {
مؤشر الأحداث: لا شيء;
}
ملاحظة: يؤدي هذا الأسلوب إلى تعطيل جميع أنواع أحداث المؤشر (النقر ، التمرير ، إلخ.) ، لذا كن حذرا عند استخدامه.
3. باستخدام السمة المعطلة
بالنسبة لعناصر النموذج (على سبيل المثال ، الأزرار) ، يمكنك استخدام السمة المعطلة لتعطيل تفاعلها مع المستخدم. يصبح الزر الذي يحتوي على السمة المعطلة غير نشط ولا يستجيب للنقرات وأحداث المؤشر الأخرى:
الزر غير متوفر
إذا كنت بحاجة إلى تعطيل حدث النقر لأنواع أخرى من العناصر ، على سبيل المثال ، للروابط ، فيمكنك تعيين السمة المعطلة يدويا باستخدام جافا سكريبت:
كونست لينك = وثيقة.كيريسيليكتور ('.تعطيل-انقر فوق الارتباط');
رابط.معطل = صحيح;
// إزالة السمة المعطلة
- اللون: أحمر;
- الحدود: 1 بكسل أسود صلب;
- توفر قواعد تعريف النمط هذه المرونة والقدرة على تخصيص مظهر العناصر على صفحة الويب.
- يمكن أيضا إضافة السمة المعطلة أو إزالتها باستخدام جافا سكريبت. على سبيل المثال ، باستخدام الخاصية المعطلة ، يمكنك تغيير حالة العنصر وقابلية النقر عليه اعتمادا على استيفاء شروط معينة.
من المهم ملاحظة أن تمكين أو تعطيل السمة المعطلة عبر جافا سكريبت لا يغير مظهرها تلقائيا. لذلك ، إذا كنت بحاجة إلى تغيير التمثيل المرئي لعنصر ما عند تعطيله أو تمكينه ، فأنت بحاجة إلى تطبيق الأنماط أو الفئات المناسبة.
أمثلة الاستخدام
فيما يلي بعض الأمثلة على كيفية استخدام جافا سكريبت لمنع النقر على عنصر في صفحة الويب:
باستخدام السمة المعطلة
أضف السمة" معطل " إلى العنصر لمنع تنشيطه بالنقر فوق:
الزر غير متوفر
باستخدام خصائص كس للمؤشر الأحداث
قم بتعيين القيمة " بلا "لخاصية" أحداث المؤشر " للعنصر لتعطيل قدرته على قبول أحداث النقر:
عنصر غير متوفر
استخدام معالج أحداث النقر
إضافة معالج حدث "انقر" إلى العنصر واستدعاء الأسلوب" بريفنتديفولت () " على كائن الحدث لمنع تنفيذ الإجراءات الافتراضية:
انقر على لي
باستخدام سمة أونكليك
أضف السمة" أونكليك "مع القيمة" إرجاع خطأ ؛ " إلى العنصر لمنع تنفيذ الإجراءات الافتراضية:
رابط غير متوفر