当前位置:首页 > JavaScript

js 实现退格

2026-03-14 19:21:39JavaScript

实现退格功能的 JavaScript 方法

监听键盘事件
通过 keydownkeyup 事件监听键盘输入,检测按下的是否为退格键(Backspace,键码为 8)。

js 实现退格

document.addEventListener('keydown', function(event) {
    if (event.key === 'Backspace' || event.keyCode === 8) {
        // 处理退格逻辑
    }
});

修改输入框内容
若目标是输入框(如 <input><textarea>),直接操作其 value 属性,删除最后一个字符。

js 实现退格

const input = document.getElementById('myInput');
input.value = input.value.slice(0, -1); // 删除末尾字符

处理可编辑元素(如 div)
对于 contenteditable 的 DIV,需通过 Selection API 获取光标位置并删除前一个字符。

const editableDiv = document.getElementById('editableDiv');
if (window.getSelection) {
    const selection = window.getSelection();
    const range = selection.getRangeAt(0);
    if (range.startOffset > 0) {
        range.setStart(range.startContainer, range.startOffset - 1);
        range.deleteContents();
    }
}

阻止默认行为(可选)
某些场景下需阻止退格键的默认行为(如页面回退),通过 event.preventDefault() 实现。

document.addEventListener('keydown', function(event) {
    if (event.key === 'Backspace' && event.target.tagName !== 'INPUT') {
        event.preventDefault(); // 阻止页面回退
    }
});

注意事项

  • 兼容性event.key 是现代标准,keyCode 已废弃但部分旧浏览器仍需支持。
  • 焦点检查:操作前确认目标元素是否聚焦,避免误删其他内容。
  • 内容安全:直接操作 HTML 时需注意 XSS 风险,建议对输入内容做转义处理。

标签: js
分享给朋友:

相关文章

js实现滚动

js实现滚动

实现滚动效果的方法 在JavaScript中实现滚动效果可以通过多种方式完成,以下是一些常见的方法: 使用window.scrollTo() window.scrollTo()方法可以将页面滚动到指…

js实现路由

js实现路由

js实现路由的方法 在JavaScript中实现路由功能可以通过多种方式完成,以下是几种常见的方法: 使用原生JavaScript实现路由 通过监听window.onhashchange事件来实现基…

js实现定位

js实现定位

使用Geolocation API获取当前位置 在JavaScript中,可以通过浏览器内置的Geolocation API获取用户的地理位置信息。该API需要用户授权才能访问位置数据。 if (n…

js 实现日历

js 实现日历

实现日历的基本思路 日历的核心功能是展示日期,并允许用户进行日期选择或导航。JavaScript 可以动态生成日历的 HTML 结构,并处理用户交互逻辑。 基础日历结构 日历通常包含头部(显示月份和…

js 实现验证码

js 实现验证码

实现验证码的 JavaScript 方法 生成随机验证码 验证码通常由随机字符(数字、字母或混合)组成。以下代码生成一个 6 位随机验证码(数字和字母混合): function generateCa…

js实现刷新

js实现刷新

刷新当前页面 使用 location.reload() 方法可以强制刷新当前页面。该方法接受一个布尔参数,默认为 false,表示从缓存中加载页面;设为 true 时强制从服务器重新加载。 // 从…