为 contenteditable 元素添加占位符
假设我们想要为具有给定 contenteditable
属性的元素设置一个占位符:
<div contenteditable></div>
注意:
contenteditable
用于指定元素内容是否可编辑,它可以应用于任何 HTML 元素,可以像input
或<textare>
那样工作编辑它们。
以下两种方法可以为 contenteditable
元素添加占位符。
使用 :empty
选择器
我们使用自定义属性 data-placeholder
来设置占位符:
<div class="editable" contenteditable data-placeholder="Edit me"></div>
当元素值为空时,将显示该属性:
.editable:empty:before {content: attr(data-placeholder);
}
处理事件
首先,我们将 id
和 data-placeholder
属性添加到元素中,如下所示:
<div id="editMe" data-placeholder="Edit me" contenteditable></div>
当用户聚焦该元素时,如果它与占位符相同,我们将重置其内容。此外,当元素失去焦点时,如果用户不输入任何内容,其内容将被设置回占位符。
const ele = document.getElementById('editMe')// 获取占位符属性
const placeholder = ele.getAttribute('data-placeholder')// 如果占位符为空,则将占位符设置为初始内容
ele.innerHTML === '' && (ele.innerHTML = placeholder)ele.addEventListener('focus', function (e) {const value = e.target.innerHTMLvalue === placeholder && (e.target.innerHTML = '')
})ele.addEventListener('blur', function (e) {const value = e.target.innerHTMLvalue === '' && (e.target.innerHTML = placeholder)
})
查看效果
http://www.taodudu.cc/news/show-3796391.html
相关文章:
- 有趣的 contentEditable
- data:text/html html contenteditable,HTML5它contenteditable属性
- 网页版聊天功能 contentEditable属性,角标问题
- html div 不可编辑状态,HTML contenteditable属性
- contenteditable属性将标签变为可编辑状态,可用于在线编辑修改文本
- HTML contenteditable 属性
- 可编辑属性html,contenteditable
- contenteditable换行踩坑心得
- data:text/html html contenteditable,contentEditable
- Vue中实现div编辑效果,及contenteditable设置为plaintext-only与true的区别
- HTML5 - contenteditable 富文本编辑器
- contentEditable属性
- 分治法——循环赛日程表
- c语言 循环赛日程表 n=2^k,循环赛日程表分治算法(c语言)
- 1325:【例7.4】 循环比赛日程表——分治
- 分治算法解循环赛日程表问题
- python实现循环赛日程表问题的算法_循环赛日程表的分治算法实现实验报告_gxl.doc...
- 1325:【例7.4】 循环比赛日程表
- 循环赛日程表分治递归求解
- python实现循环赛日程表问题的算法_循环赛日程表的分治算法实现实验报告gxl.doc...
- 循环赛事日程表JAVA_java实现循环赛日程表
- 打印循环赛日程表
- 循环赛日程表算法分析c语言,循环赛日程表
- 循环赛日程表------分治算法
- 循环比赛日程表(分治法)
- 循环赛日程安排(C语言)
- 算法之循环赛日程表
- JAVA代码—算法基础:循环赛日程表
- 基于C++的循环赛日程表算法设计
- 算法分析与设计——2.5 循环赛日程表
为 contenteditable 元素添加占位符相关推荐
- mvc @html.textboxfor 添加正则表示式,如何在C#/ MVC 4中的Html.TextBoxFor中输入占位符文本...
通常在 HTML / CSS中,如果要将占位符文本添加到文本框,则只需执行以下操作: < input type ="text"class ="input-class ...
- 如何为“选择”框创建占位符?
我正在使用占位符进行文本输入,效果很好. 但是我也想为我的选择框使用一个占位符. 当然,我可以使用以下代码: <select><option value=""&g ...
- 使用CSS更改HTML5输入的占位符颜色
Chrome支持input[type=text]元素的占位符属性 (其他人也可能这样做). 但是以下CSS对占位符的值没有任何作用: input[placeholder], [placeholder] ...
- 实现跨浏览器的HTML5占位符
译自:http://webdesignerwall.com/tutorials/cross-browser-html5-placeholder-text 译者:蒋宇捷,转载请标明出处(http://b ...
- MyBatis——占位符,转义字符,多元素查询(模糊查询),动态sql(多条件中多查询,多条件中单查询)
占位符:${},#{} ${}:充当占位符时,无法防止sql注入,纯纯的外面给啥,他就往上放啥 #{}:充当-,可以防止sql注入 实体类: package com.itjh.pojo;public ...
- 深度学习实战(4)如何向BERT词汇表中添加token,新增特殊占位符
向BERT词汇表中添加token 问题表述 添加特殊占位符号 add_special_tokens 其他占位符接口 报错与解决方案 问题表述 在实际应用或者学术科研过程中,我们常常需要添加一些特殊的占 ...
- css在中元素添加元素,css - 在伪元素内容中添加换行符到:: after或:: before
css - 在伪元素内容中添加换行符到:: after或:: before 我无法访问页面的HTML或PHP,只能通过CSS进行编辑. 我一直在网站上进行修改并通过content或::before伪元 ...
- html表单元素占位符是,HTML各种表单元素模板及写法
input中有很多属性type="text"表示文本框: name是连接前端后端的桥梁 value属性,包含的默认字符串 size宽度 maxlength接受的最多字符数 plac ...
- js空格占位符_灵活使用 console 让 js 调试更简单
Web开发最常用的高度就是 console.log ,虽然 console.log 占有一席之地,但很多人并没有意识到 console 本身除了基本 log 方法之外还有很多其他方法.适当使用这些方法 ...
最新文章
- Win32中GDI+应用(三)---Graphics类
- FullCalendar
- 阿里巴巴大数据之路——数据模型篇
- e.getMessage() e.printStackTrace() 和e.printStackTrace() 小结
- 解决ora-280000 the account is locked
- mysql级联复制转换成一主两从_一主两从转级联复制
- mysql数据库的变量有哪些_[数据库]MySQL变量
- [nodejs]国内npm安装nodejs modules失败的几个解决方案
- matlab中now函数_now()方法以及JavaScript中的示例
- 使用MyEclipse建立working set
- sitecore系统教程之体验编辑器
- HTML Text Editor
- 史上最详细的sqlmap使用教程
- shell命令的退出状态码(exit status)
- 国药准字、药品本位码
- Slowly Change Dimention 常见三种类型
- ios和android下数字没有垂直居中,手机端设置小号字体的上下居中问题
- Python 实现简单虚拟跑步机计算消耗的能量
- app常见的专项测试以及面试题
- Windows 清理本地端口占用
热门文章
- matlab画多层网络图,复杂网络建模 社交网络图的一些计算代码(不全欢迎补充)MATLAB...
- 编译安装gcc-4.8.2(编译出错后修改源码 编译成功)
- RIQ编号,冲突处理
- barnyard2 mysql_安装配置Snort和barnyard2
- Spring Statemachine 简介
- 1346 	连分数(题目)
- 括号匹配编码c语言,括号匹配(c语言实现)
- 实例9、stc8a蓝牙模块HC05或者HC06模块,控制小车。利用定时器1产生通信的波特率9600
- 用ad2018绘制51单片机最小系统原理图和pcb
- FSL5.0使用教程