jQuery 是一个快速、小巧且功能丰富的 JavaScript 库,它简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互。获得焦点(focus)和失去焦点(blur)事件是常见的 DOM 事件,用于处理用户与页面元素的交互。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>jQuery Focus and Blur Events</title>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<style>
.focused {
border: 2px solid blue;
}
.blurred {
border: 2px solid red;
}
</style>
</head>
<body>
<input type="text" id="myInput">
<script>
$(document).ready(function() {
$('#myInput').on('focus', function() {
$(this).addClass('focused').removeClass('blurred');
}).on('blur', function() {
$(this).addClass('blurred').removeClass('focused');
});
});
</script>
</body>
</html>
原因:
$(document).ready()
中执行。解决方法:
$(document).ready(function() {
$('#myInput').on('focus', function() {
console.log('Input focused');
}).on('blur', function() {
console.log('Input blurred');
});
});
原因:
解决方法:
$(document).ready(function() {
$('#myInput').on('focus', function() {
$(this).addClass('focused').removeClass('blurred');
}).on('blur', function() {
$(this).addClass('blurred').removeClass('focused');
});
});
通过以上方法,可以有效解决 jQuery 获得和失去焦点事件绑定及样式变化的问题。