这些事件都与表单元素和用户输入交互相关,下面分别介绍每个事件的特性:
<input>, <select>, <textarea>等)document.querySelector('input').addEventListener('change', function() {
console.log('值已改变:', this.value);
});
document.querySelector('input').addEventListener('input', function() {
console.log('当前值:', this.value);
});
这些事件与剪贴板操作相关:
共同特点:
event.clipboardData访问剪贴板数据event.preventDefault()阻止默认行为const input = document.querySelector('input');
input.addEventListener('cut', (e) => {
console.log('剪切操作:', e.clipboardData.getData('text'));
});
input.addEventListener('copy', (e) => {
console.log('复制操作:', input.selectionStart, input.selectionEnd);
});
input.addEventListener('paste', (e) => {
const pastedText = e.clipboardData.getData('text');
console.log('尝试粘贴:', pastedText);
// e.preventDefault(); // 阻止默认粘贴行为
});
当用户粘贴内容到输入框时:
paste 事件(可在此阻止默认行为)input 事件(因为值改变了)change 事件input事件实现实时搜索/验证change事件处理最终值提交这些事件在处理表单交互时非常有用,可以根据需求选择合适的事件类型。
热门推荐:
0