قم بتحميل الرمز أولاً:
نسخة الكود كما يلي:
<head>
<title> </title>
<script src = "scripts/jQuery-1.4.1.js" type = "text/javaScript"> </script>
<script type = "text/javaScript" language = "javaScript">
$ (function () {
$ ("div"). bind ("Click.A" ، function () {// انقر
$ ("body"). إلحاق ("<p> انقر فوق الحدث </p>") ؛
})
$ ("div")
$ ("body"). إلحاق ("<p> dblclick event </p>") ؛
})
$ ("div")
$ ("body"). إلحاق ("<p> حدث Mouseover </p>") ؛
})
$ ("div"). bind ("mouseout.a" ، function () {// events of the mouse exment elem
$ ("body"). إلحاق ("<p> mouseout event </p>") ؛
})
})
</script>
</head>
<body>
<Div> مساحة الاسم jQuery </div>
</body>
يظهر التأثير في الشكل. أيضًا ، إذا كنت لا أرغب في تشغيله عند النقر المزدوج
كيف تحل المشكلة إذا قمت بالنقر فوق الحدث وتشغيل حدث النقر المزدوج؟ لقد حاولت أيضًا إلغاء ربط حدث النقر عند النقر المزدوج.
ولكن بهذه الطريقة ، لم يعد حدث النقر مفيدًا. . .
في وقت لاحق ، سألت شخصًا ما في المنتدى وأخيراً حصلت على الإجابة. وهذا هو استخدام طريقة setTimeOut () لتعيين الفاصل الزمني لحدث النقر.
تم تعيينه على 300 مللي ثانية ، لذلك عند النقر المزدوج ، نظرًا لأن الفاصل الزمني للنقر المزدوج أقل من 300 مللي ثانية ، فلن يتم إنشاء حدث النقر ، ولكن سيتم إنشاءه فقط.
حدث DBLCLICK. في حدث النقر المزدوج ، تحتاج إلى استخدام وظيفة ClearTimeOut () لمسح معالجة الأحداث النقر. الرمز كما يلي:
نسخة الكود كما يلي:
<script type = "text/javaScript" language = "javaScript">
$ (function () {
var timer = null ؛
$ ("div"). bind ("Click.A" ، function () {// انقر
ClearTimeout (مؤقت) ؛
Timer = setTimeOut (function () {// إضافة وظيفة setTimeOut () في حدث النقر لتعيين الفاصل الزمني الذي تم تشغيله بواسطة حدث النقر
$ ("body"). إلحاق ("<p> انقر فوق الحدث </p>") ؛
} ، 300) ؛
})
$ ("div")
ClearTimeout (Timer) ؛
$ ("body"). إلحاق ("<p> dblclick event </p>") ؛
})
$ ("div")
$ ("body"). إلحاق ("<p> حدث Mouseover </p>") ؛
})
$ ("div"). bind ("mouseout.a" ، function () {// events of the mouse exment elem
$ ("body"). إلحاق ("<p> mouseout event </p>") ؛
})
})
</script>
بهذه الطريقة ، سيتم حل هذه المشكلة!