Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

ฉันจะปิดใช้งานฟังก์ชันการคลิก JavaScript ได้อย่างไรหากลิงก์ขึ้นต้นด้วย #


สำหรับสิ่งนี้ ให้ใช้ preventDefault() ใน JavaScript ต่อไปนี้เป็นรหัส JavaScript -

ตัวอย่าง

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
</head>
<body>
<a href="urlLink">Press Me to see logs</a>
<a href="urlLink">Press Me to see logs in console</a>
<a href="#">Nothing will happen</a>
<script>
   $(function(){
      $("a:not([href='#'])").click(function(event){
         event.preventDefault();
         console.log("You have pressed me!!!!!");
      });
   });
</script>
</body>
</html>

หากต้องการเรียกใช้โปรแกรมข้างต้น ให้บันทึกชื่อไฟล์ anyName.html(index.html) และคลิกขวาที่ไฟล์ เลือกตัวเลือก เปิดด้วยเซิร์ฟเวอร์จริง ใน VS ตัวแก้ไขโค้ด

ผลลัพธ์

ฉันจะปิดใช้งานฟังก์ชันการคลิก JavaScript ได้อย่างไรหากลิงก์ขึ้นต้นด้วย #

หากคุณคลิกทั้งสองลิงก์ กดฉัน เพื่อดูบันทึกและกดฉัน หากต้องการดูบันทึกในคอนโซล คุณจะได้รับเอาต์พุตคอนโซล อย่างไรก็ตาม หากคุณจะคลิกลิงก์ จะไม่มีอะไรเกิดขึ้น แล้วมันก็ไม่พิมพ์อะไรเลย −

ฉันจะปิดใช้งานฟังก์ชันการคลิก JavaScript ได้อย่างไรหากลิงก์ขึ้นต้นด้วย #

ด้านบนผมกด Pres Me เพื่อดูบันทึกเพื่อแสดงผลลัพธ์

หากคุณคลิกที่ลิงค์ จะไม่มีอะไรเกิดขึ้น แล้วมันก็ไม่พิมพ์อะไรเลยเหมือนในผลลัพธ์ด้านล่าง −

ฉันจะปิดใช้งานฟังก์ชันการคลิก JavaScript ได้อย่างไรหากลิงก์ขึ้นต้นด้วย #