สอบถามเรื่องการหน่วงเวลา ก่อนเข้า function

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา สอบถามเรื่องการหน่วงเวลา ก่อนเข้า function

สอบถามเรื่องการหน่วงเวลา ก่อนเข้า function

$("#id").hover(function(){ // hover
  // function1
},
function(){ // out
   // function2
});

ก่อนจะเรียก function1 ที่ต้องการผมอยากจับเวลาสัก 3 วินาที ถ้าเม้ายัง hover อยู่ ค่อยทำงานใน function1 อะครับ 

ปล. แต่ถ้าเอา mouse ออก ให้หยุดทำงานอ่ะครับ ไม่รู้ว่าต้องทำยังไง ใครทราบหรือมี idea ช่วยแนะนำหน่อยครับ



Ekgapob Sangkhaman 01-03-2012 17:34:13

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1
Phanuwat Phalad 02-03-2012 09:17
 ความคิดเห็นที่ 2

 ใช้ setTimeout() เลยครับ เป็น Function หน่วงเวลา



Phanuwat Phalad 02-03-2012 09:18
 ความคิดเห็นที่ 3

settimeout เราจะเช็ึคยังไงครับว่า เวลา mouseleave, หรือ mouseout ให้ มันหยุดทำงาน ไม่ต้องทำต่อ



Ikamp Waurawate 02-03-2012 09:27
 ความคิดเห็นที่ 4

 ตัวอย่าง

โค้ดตัวอย่าง

<div id="iamdiv" style="position:relative;width:100px;height:100px;background-color:#CCCCCC;">

</div>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>  
<script type="text/javascript">
$(function(){
	var iDelay=null;
	$("#iamdiv").hover(function(){
		iDelay=setTimeout(function(){
			alert("OK");
		},3000);
	},function(){
		clearTimeout(iDelay);
	});
});
</script>

 



ninenik 02-03-2012
 ความคิดเห็นที่ 5

ขอบคุณมากคับ พี่นิค



Ikamp Waurawate 02-03-2012 15:37
1






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ