html输入框的内容点击时选中再点击取消选中
时间: 2024-09-16 08:01:24 浏览: 40
vue循环中点击选中再点击取消(单选)的实现
HTML中的input元素默认支持文本内容的选中和取消选中,如果你想实现这样的效果,通常会在`<input>`标签内添加`contenteditable="true"`属性,使其变为可编辑区域。然后,可以使用JavaScript的`select()`和`blur()`方法来实现单击选中和再次单击取消选中:
```html
<input type="text" id="editable-text" contenteditable="true">
```
```javascript
var input = document.getElementById('editable-text');
function toggleSelection() {
if (input.selectionStart === input.selectionEnd) { // 如果已选中
input.blur(); // 取消选中
} else {
input.select(); // 选中文本
}
}
// 添加事件监听,比如在点击事件中触发
input.addEventListener('click', toggleSelection);
```
在这个例子中,当用户点击input时,如果已经有部分文本被选中,那么就取消选中;如果没有选中,则将整个文本选中。用户第二次点击时会恢复到无选中的状态。
阅读全文