js按ctrl+enter换行,让可编辑的div换行,并获取输入焦点光标
2017-11-17 13:40
218 查看
<div id="inputTxtArea" contenteditable="true"></div> $(document).keydown(function (e) { var e = e || window.event, ec = e.keyCode || e.which; if (!e.ctrlKey && 13 == ec) { //console.log('发送'); sendMsgTal(); return false; } if (e.ctrlKey && 13 == ec) { //console.log('换行'); if (browserType() == "IE" || browserType() == "Edge") { $("#inputTxtArea").append("<div></div>"); } else if (browserType() == "FF") { $("#inputTxtArea").append("<br/><br/>"); } else { $("#inputTxtArea").append("<div><br/></div>"); } //设置输入焦点 var o = document.getElementById("inputTxtArea").lastChild; var textbox = document.getElementById('inputTxtArea'); var sel = window.getSelection(); var range = document.createRange(); range.selectNodeContents(textbox); range.collapse(false); range.setEndAfter(o);// range.setStartAfter(o);// sel.removeAllRanges(); sel.addRange(range); } }); function browserType () { var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串 var isOpera = false; if (userAgent.indexOf('Edge') > -1) { return "Edge"; } if (userAgent.indexOf('.NET') > -1) { return "IE"; } if (userAgent.indexOf("Opera") > -1 || userAgent.indexOf("OPR") > -1) { isOpera = true; return "Opera" }; //判断是否Opera浏览器 if (userAgent.indexOf("Firefox") > -1) { return "FF"; } //判断是否Firefox浏览器 if (userAgent.indexOf("Chrome") > -1) { return "Chrome"; } if (userAgent.indexOf("Safari") > -1) { return "Safari"; } //判断是否Safari浏览器 if (userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera) { return "IE"; }; //判断是否IE浏览器 }
相关文章推荐
- ahjesus 获取div编辑框,textarea,input text的光标位置 兼容IE,FF和Chrome
- Android 文本输入框 获取焦点和设置光标到末尾
- 如何让div获取焦点或可编辑
- React可编辑DIV获取焦点的两种方式
- ahjesus 获取div编辑框,textarea,input text的光标位置 兼容IE,FF和Chrome
- 可编辑div获取焦点位置和选择区域的文本
- TextView/EditText字体阴影 ,自动换行,焦点获取,输入法回车键前往,自定义光标
- 获取div编辑框,textarea,input text的光标位置 兼容IE,FF和Chrome的方法介绍
- 获取可编辑div光标位置
- 获取div编辑框,textarea,input text的光标位置 兼容IE,FF和Chrome的方法介绍
- Android 文本输入框 获取焦点和设置光标到末尾
- Android 文本输入框 获取焦点和设置光标到末尾
- 工作笔记---jQuery在可编辑的div光标处插入内容 兼容IE,火狐,谷歌
- IE点击子div,父div不获取焦点问题的解决办法(二)
- EditText设置/隐藏光标位置、选中文本和获取/清除焦点
- 防止窗体显示时获取输入焦点
- 文本框获取焦点时禁止手机弹出自带的输入键盘
- EditText的换行输入、输入起始位置、调用指定格式的系统键盘(显示和隐藏),光标颜色,密码动态设置可见性
- [Android教程]EditText设置/隐藏光标位置、选中文本和获取/清除焦点
- [Flex]Flex嵌入到HTML中切换焦点不能输入中文和遮盖DIV的问题