เทคนิค ใช้ event beforeunload แจ้งเตือนก่อน ปิดบราวเซอร์ ด้วย jQuery

เขียนเมื่อ 14 ปีก่อน โดย Ninenik Narkdee
event jquery แจ้งเตือน

คำสั่ง การ กำหนด รูปแบบ ตัวอย่าง เทคนิค ลูกเล่น การประยุกต์ การใช้งาน เกี่ยวกับ event jquery แจ้งเตือน

ดูแล้ว 18,685 ครั้ง




ตัวอย่างโค้ดด้านล่าง เป็นการประยุกต์ใช้ event ชื่อ beforeunload สำหรับการแจ้งเตือนการปิด บราวเซอร์ โดยเมื่อทำการยืนยันการปิดบราวเซอร์ แล้วให้สามารถไปทำงานในส่วน เรียกใช้ ajax หรือฟังก์ชันที่ต้องการก่อนปิด ได้ (ทดสอบกับ IE Firefox Chrome เวอร์ล่าสุดใช้งานได้)

 

<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> 
    <title>Document</title> 
    <link rel="stylesheet" href="https://unpkg.com/bootstrap@4.3.1/dist/css/bootstrap.min.css" >
</head>
<body>
 
  <div style="margin:auto; width:500px;">
 <form name="form1" method="post" action="">
  <div>Message:  </div>
  <div>
  <input type="text" name="mytext" class="mycss enter_key_not_allow">
  </div>
  <div>
    <textarea name="msg" cols="50" rows="3" id="msg"></textarea>
  </div>
  <div>
  <br>
    <button type="submit" id="btn_submit" name="btn_submit" >Send Message</button>
    </div>
</form><br>
<a href="http://www.ebiwayo.com">Ebiwayo</a>
</div>
 
<script src="https://unpkg.com/jquery@3.3.1/dist/jquery.min.js"></script>
<script src="https://unpkg.com/bootstrap@4.3.1/dist/js/bootstrap.min.js"></script>
<script type="text/javascript">
$(function(){
    $(window).bind("beforeunload",function(event){
        var msg="ยืนยันการปิดหน้านี้?";
		event.preventDefault();
        $(window).bind("unload",function(event){
            event.stopImmediatePropagation();
            // แทรก ajax code ลบ session หรืออื่น ๆ
            alert("Bye Bye");
        });
        return msg;
    });
    $("a").click(function(){ // กรณีคลิกลิ้งค์ ไม่ต้องแสดง การแจ้งเตือน
        $(window).unbind("beforeunload");
    });     
});
</script>
</body>
</html>

ตัวอย่าง ข้อยกเว้นกรณีลิ้งค์ Ebiwayo

ทดสอบด้วยการ กรอกข้อมูลใน Textbox เพื่อให้มีการเปลี่บนแปลงในหน้าเพจ ก่อน แล้วปิดหน้าเว็บเพจนี้

 



กด Like หรือ Share เป็นกำลังใจ ให้มีบทความใหม่ๆ เรื่อยๆ น่ะครับ











URL สำหรับอ้างอิง





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

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


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


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







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