เมธอด blur() (blur() Method)
เมธอด blur() ใน HTML DOM ใช้สำหรับนำโฟกัสคีย์บอร์ด (keyboard focus) ออกจากอิลิเมนต์เฉพาะ ผ่าน blur เราสามารถเพิ่มหรือลบ blur ของอิลิเมนต์ HTML ใดๆ ได้ เมธอด blur() ช่วยให้การนำทางรอบหน้าเว็บดีขึ้น เนื่องจากเราสามารถโฟกัสที่อิลิเมนต์เฉพาะได้ตามอินพุตผู้ใช้
ไวยากรณ์ (Syntax)
element.blur()
ตัวอย่างการใช้งาน
ตัวอย่างด้านล่างแสดงการให้และเอา focus ของลิงก์ (<a>)
<!DOCTYPE html>
<html>
<head>
<style>
a {
text-decoration: none;
font-size: 20px;
}
a:focus, a:active {
color: red;
text-decoration: underline;
font-size: 40px;
}
</style>
</head>
<body>
<a id="Anchor" href="https://example.com">example.com</a>
<p>Give focus or remove focus...</p>
<input type="button" onclick="getfocus()" value="Get focus">
<input type="button" onclick="losefocus()" value="Lose focus">
<script>
function getfocus() {
document.getElementById("Anchor").focus();
}
function losefocus() {
document.getElementById("Anchor").blur();
}
</script>
</body>
</html>
ผลลัพธ์
เริ่มต้น: ลิงก์ขนาด 20px สีปกติ
คลิก Get focus: ลิงก์ได้ focus - สีแดง, ขีดเส้นใต้, ขนาด 40px
คลิก Lose focus: ลิงก์สูญเสีย focus - กลับสู่สถานะเดิม
คำอธิบายโค้ด
- CSS: กำหนด style สำหรับ
a(ปกติ) และa:focus, a:active(เมื่อโฟกัส) - ลิงก์:
<a id="Anchor" href="https://example.com">example.com</a> - ปุ่ม Get focus: เรียก
getfocus()→element.focus() - ปุ่ม Lose focus: เรียก
losefocus()→element.blur()
คำอธิบายเพิ่มเติม
focus()และblur()เป็นเมธอดของHTMLElement(ทำงานกับทุก element ที่ focusable)- Element ที่ focusable โดยค่าเริ่มต้น:
<a href>,<button>,<input>,<select>,<textarea>,<area> - ทำให้ focusable ได้ด้วย
tabindex="0"(ตามลำดับ tab) หรือtabindex="-1"(programmatic focus เท่านั้น) - Event ที่เกี่ยวข้อง:
focus,blur,focusin,focusout focusin/focusoutบับเบิล (bubble) ได้,focus/blurไม่บับเบิล- เข้าถึง element ที่ focus อยู่:
document.activeElement