تصف هذه المقالة طريقة التعايش النقر والنقر المزدوج في JavaScript. شاركه للرجوع إليه. التحليل المحدد هو كما يلي:
في عملية تطوير الويب ، نواجه هذه المشكلة غالبًا: قم بتسجيل حدث نقر مزدوج للحصول على رابط ، أو تسجيل حدث نقرة أو نقر مزدوج على زر أو عنصر آخر في نفس الوقت. في هذا الوقت ، نجد أن حدث النقر المزدوج في صفحة الويب لن يعمل أبدًا. والسبب هو أنه عندما ننقر مرة واحدة ، يتم اعتراضه بواسطة ارتباط تشعبي أو حدث النقر. تصف هذه المقالة طريقة محددة حول كيفية حل هذه المشكلة التقنية. مبدأ التنفيذ لهذا الحل هو أن كلا من حدث النقر والحدث النقر المزدوج يتصلان بنفس الطريقة. نحكم على ما إذا كان هذا حدثًا نقرة أو نقرًا مزدوجًا استنادًا إلى الفاصل الزمني بين نقرات الماوس. عندما يأتي حدث النقر ، لا تسميه أولاً ، انتظر لفترة قصيرة من الزمن. بعد هذه الفترة الزمنية ، إذا لم يكن هناك نقرة التالية ، ابدأ في استدعاء العملية المقابلة للنقر. إذا كان هناك نقرة التالية ، اتصل بزر الماوس.
للحصول على وصف مفصل ، يرجى المشاركة في قائمة الكود التالية:
انسخ الرمز كما يلي: <html>
<head>
<title> يدرك JavaScript النقر والنقر المزدوج النقر فوق التعايش </title>
<meta name = "generator" content = "editPlus">
<meta name = "uptor" content = "//www.vevb.com/">
<meta name = "الكلمات الرئيسية" content = "">
<meta name = "الوصف" content = "">
</head>
<body>
<script language = "javaScript">
<!-
var dctime = 250 ؛ // الوقت doubleclick
var dcdelay = 100 ؛ // لا نقرات بعد doubleclick
var dcat = 0 ؛ // وقت doubleclick
var savevent = null ؛ // حفظ الحدث للتعامل مع dclick ().
var savevttime = 0 ؛ // حفظ وقت النقر فوق الحدث.
var savto = null ؛ // مقبض النقر فوق settimeout
وظيفة showme (txt) {
document.forms [0] .elements [0] .value += txt ؛
}
وظيفة تعالج (التي) {
التبديل (الذي) {
حالة "انقر":
حفظ = الذي ؛
D = تاريخ جديد () ؛
SaveVtTime = D.GetTime () ؛
SAVTO = setTimeout ("dclick (savevent)" ، dctime) ؛
استراحة؛
حالة "dblclick":
dodoubleclick (الذي) ؛
استراحة؛
تقصير:
}
}
وظيفة dclick (التي) {
if (saveVtTime - dcat <= 0) {
العودة كاذبة
}
showme ("انقر") ؛
}
وظيفة dodoubleclick (التي) {
var d = new Date () ؛
dcat = d.getTime () ؛
if (savto! = null) {
SAVTO = NULL ؛
}
Showme ("انقر نقرًا مزدوجًا") ؛
}
//->
</script>
<p>
<a href = "javaScript: void (0)"
OnClick = "Handwisely (event.type)"
ondblclick = "handwisely (event.type)"
Style = "Color: Blue ؛ Font-Family: Arial ؛ Cursor: Hand">
انقر لرؤية النتائج:
</a>
</p>
<Porm>
<griding>
<tr>
<td valign = "top">
وضع الحدث: <textarea rows = "4" cols = "60" wrap = "soft"> </textarea>
</td>
</r>
<tr>
<td valign = "top">
<نوع الإدخال = "إعادة تعيين">
</td>
</r>
</table>
</form>
</body>
</html>
آمل أن تكون هذه المقالة مفيدة لبرمجة JavaScript للجميع.