อัปโหลดรหัสก่อนอื่น:
การคัดลอกรหัสมีดังนี้:
<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 () {// Click Event
$ ("body"). ภาคผนวก ("<p> คลิกเหตุการณ์ </p>");
-
$ ("div"). bind ("dblclick.a", function () {// เหตุการณ์ดับเบิลคลิก
$ ("body"). ภาคผนวก ("<p> เหตุการณ์ dblclick </p>");
-
$ ("div"). bind ("mouseover.a", function () {// เหตุการณ์ของเมาส์ที่ผ่านองค์ประกอบ
$ ("body"). ภาคผนวก ("<p> เหตุการณ์ Mouseover </p>");
-
$ ("div"). bind ("mouseout.a", function () {// เหตุการณ์ของเมาส์ที่ย้ายออก
$ ("body"). ภาคผนวก ("<p> เหตุการณ์ Mouseout </p>");
-
-
</script>
</head>
<body>
<div> jQuery namespace </div>
</body>
เอฟเฟกต์จะแสดงในรูป นอกจากนี้ถ้าฉันไม่ต้องการทริกเกอร์เมื่อดับเบิลคลิก
จะแก้ปัญหาได้อย่างไรหากคุณคลิกเหตุการณ์และเพียงแค่เรียกเหตุการณ์ดับเบิลคลิก? ฉันได้พยายามยกเลิกเหตุการณ์คลิกเมื่อดับเบิลคลิก
แต่ด้วยวิธีนี้เหตุการณ์การคลิกไม่มีประโยชน์อีกต่อไป - -
ต่อมาฉันถามใครบางคนในฟอรัมและในที่สุดก็ได้รับคำตอบ นั่นคือการใช้เมธอด settimeout () เพื่อตั้งค่าช่วงเวลาของเหตุการณ์การคลิก
ตั้งค่าเป็น 300ms ดังนั้นเมื่อดับเบิลคลิกเนื่องจากช่วงเวลาของการดับเบิลดับเบิลคลิกน้อยกว่า 300ms เหตุการณ์การคลิกจะไม่ถูกสร้างขึ้น แต่จะถูกสร้างขึ้นเท่านั้น
เหตุการณ์ dblclick ในเหตุการณ์ดับเบิลคลิกคุณต้องใช้ฟังก์ชั่น ClearTimeOut () เพื่อล้างการประมวลผลเหตุการณ์คลิก รหัสมีดังนี้:
การคัดลอกรหัสมีดังนี้:
<script type = "text/javascript" language = "JavaScript">
$ (function () {
ตัวจับเวลา var = null;
$ ("div"). bind ("click.a", function () {// Click Event
ClearTimeout (ตัวจับเวลา);
timer = settimeout (function () {// เพิ่มฟังก์ชั่น settimeout () ในเหตุการณ์คลิกเพื่อตั้งค่าช่วงเวลาที่ทริกเกอร์โดยเหตุการณ์คลิก
$ ("body"). ภาคผนวก ("<p> คลิกเหตุการณ์ </p>");
}, 300);
-
$ ("div"). bind ("dblclick.a", function () {// เหตุการณ์ดับเบิลคลิก
ClearTimeOut (จับเวลา);
$ ("body"). ภาคผนวก ("<p> เหตุการณ์ dblclick </p>");
-
$ ("div"). bind ("mouseover.a", function () {// เหตุการณ์ของเมาส์ที่ผ่านองค์ประกอบ
$ ("body"). ภาคผนวก ("<p> เหตุการณ์ Mouseover </p>");
-
$ ("div"). bind ("mouseout.a", function () {// เหตุการณ์ของเมาส์ที่ย้ายออก
$ ("body"). ภาคผนวก ("<p> เหตุการณ์ Mouseout </p>");
-
-
</script>
ด้วยวิธีนี้ปัญหานี้จะได้รับการแก้ไข!