文本框字符限制、focus光标定位
一、为一个元素的所有子元素设置统一样式:.className * { color: #6666 }
二、正则表达式:
1、去除所有HTML标签只保留文字: /<\/?.+?\/?>/
2、去除空格:/\s+/
\s:匹配任何空白符(空格、制表符、换页、换行…),等价于[ \f\n\r\t\v]
\s+:匹配上述任意多个字符
"." 表示除\n之外的任意字符
"*" 表示匹配0-无穷
"+" 表示匹配1-无穷
三、设置contenteditablefocus时,光标移动文本最后。
setFocu($(".className"));
function setFocu(ele) {
ele = ele[0];
ele.focus();
var range = document.createRange();
range.selectNodeContents(ele);
range.collapse(false);
var sel = window.getSelection();
sel.removeAllRanges();
sel.addRange(range);
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1"/>
<title>Title</title>
<script src="../commonJs/jquery-3.1.0.min.js"></script>
<style>
* {box-sizing: border-box;}
.txtBox {
width: 100%;
height: 300px;
outline: none;
padding: 10px;
border: 1px solid #FCA700;
} .txtBox:empty::after {
display: block;
content: attr(placeholder);
color: #999;
} .lengthTip {
text-align: right;
}
</style>
</head>
<body>
<div class="txtBox" contenteditable="true" placeholder="请输入内容"></div>
<p class="lengthTip"><span class="txtLength">0</span> / 500</p>
<script>
$(function () {
txtObj.init();
}); var txtObj = {
getLength: function () {
var txtBox = $(".txtBox");
txtBox.keyup(function () {
var reg = /<\/?.+?\/?>|\s+/g;
var txtLen = txtBox.html().replace(reg, "").length;
$(".txtLength").html(txtLen);
});
}, getTxt: function () {
$(".txtBox").html(txtJson.txt);
txtObj.setFocus($(".txtBox"));
}, // 设置contenteditable光标位置
setFocus: function (ele) {
ele = ele[0];
var range = document.createRange();
range.selectNodeContents(ele);
range.collapse(false); var sel = window.getSelection();
sel.removeAllRanges();
sel.addRange(range);
}, init: function () {
txtObj.getLength();
txtObj.getTxt();
}
} var txtJson = {
"txt": '<div class="txtContent"><span>内容只包括文本,不包括html标签,空格、换行……</span></div>'
}
</script>
</body>
</html>
文本框字符限制、focus光标定位的更多相关文章
- WPF 自定义文本框输入法 IME 跟随光标
本文告诉大家在 WPF 写一个自定义的文本框,如何实现让输入法跟随光标 本文非小白向,本文适合想开发自定义的文本框,从底层开始开发的文本库的伙伴.在开始之前,期望了解了文本库开发的基础知识 本文实现的 ...
- js文本框字符数输入限制
我们常常在前台页面做一些文本输入长度的验证,为什么呢?因为数据库字段设置了大小,如果不限制输入长度,那么写入库时就会引发字符串截断异常.今天就给大家分享一个jquery插件来解决这一问题. (func ...
- div contenteditable 重新编辑时focus光标定位到前面问题解决
<div class="editdiv" id="edit" contenteditable="true">这是添加文字< ...
- input _文本框回车或者失去光标触发事件
IE下,当一个HTML元素的属性改变的时候,都能通过 onpropertychange来即时捕获. onchange在属性值改变时还必须使得当前元素失去焦点(onblur)才可以激活该事件. 了解这一 ...
- JQuery实时监控文本框字符变化
$(function(){ $('input[name="addr"]').on('input propertychange', function() { if ($('input ...
- input文本框点击第一次光标在最右边
效果: 样式效果引入bootstrap4.0就OK了. HTML代码: <div class="input-group w-25"> <div class=&qu ...
- AlloyRenderingEngine文本框组件
写在前面 Github: https://github.com/AlloyTeam/AlloyGameEngine 在dom元素里,自带了input标签,设置其type为text,它就是一个文本框. ...
- DOM(九)使用DOM设置文本框
1.控制用户输入的字符个数 对于单行文本框和密码输入框,可以利用maxlength属性控制用户输入的字符个数. 对于多行文本,maxlength为自定义属性,其值最多输入的字符的个数,在onkeypr ...
- Silverlight中文本框添加回车事件后,换行无法清除的解决方法
在开发Silverlight的项目中,为了更好的用户体验,我们常要给一些控件添加一些快捷键.然而,在Silverlight中当用户回车提交后,光标停留在文本框的第二行怎么也清除不掉,经过一段时间研究, ...
随机推荐
- java-属性集properties+加载配置文件
简介 /* 使用properties集合存储数据,遍历取出properties集合中的数据 properties集合有一些操作字符串的特有方法 Object setProperty(String ke ...
- AutoValue —— Generated immutable value classes
本文参考 在<Effective Java>第三版第十条"Obey the general contract when overriding equals"中提到goo ...
- 《手把手教你》系列基础篇(八十四)-java+ selenium自动化测试-框架设计基础-TestNG日志-上篇(详解教程)
1.简介 TestNG还为我们提供了测试的记录功能-日志.例如,在运行测试用例期间,用户希望在控制台中记录一些信息.信息可以是任何细节取决于目的.牢记我们正在使用Selenium进行测试,我们需要有助 ...
- HTML5+CSS3兼容收藏夹
CSS3选择器兼容IE6~8: Selectivizr 使用方法: <!--[if (gte IE 6)&(lte IE 8)]> <script src="htt ...
- js 中的submit 回调函数
1.submit.php <?php $arr = $_POST; $arr['msg']=1; //echo $_POST['uname']; echo json_encode($arr); ...
- Chrome 已经原生支持截图功能,还可以给节点截图!
昨天 Chrome62 稳定版释出,除了常规修复各种安全问题外,还增加很多功能上的支持,比如说今天要介绍的强大的截图功能. 直接截图 打开开发者工具页面,选择左上角的元素选择按钮(Inspect) W ...
- webpack系列——webpack3导入jQuery的新方案
本文的目的 拒绝全局导入jQuery!! 拒绝script导入jQuery!! 找到一种只在当前js组件中引入jQuery,并且使用webpack切割打包的方案! 测试环境 以下测试在webpack3 ...
- SVG vs Image, SVG vs Iconfont
这可能是个别人写过很多次的话题,但貌似由于兼容性的原因?图标的显示还是用着 Iconfont 或者 CSS Sprite 的形式?希望通过自己新瓶装旧酒的方式能重新引导一下问题. SVG vs Ima ...
- HTML 和 form 表单常用标签
HTML和CSS 常用标签: p:段落,自动换行 span:和div类似,但是默认不换行 br:换行 hr:分割线 h1-h6:标题标签 a:超链接 瞄点:通过给a链接设置#XX作为链接,给需要链接的 ...
- in a frame because it set 'X-Frame-Options' to 'sameorigin'
不是所有网站都给 iframe嵌套的, 有的网站设置了 禁止嵌套!!! 浏览器会依据X-Frame-Options的值来控制iframe框架的页面是否允许加载显示出来, 看你们公司这么设置了!! ...