div模拟textarea实现高度自适应
样式模拟仿照 div模拟textarea以实现高度自适应 ? 张鑫旭-鑫空间-鑫生活 的例子
html代码片段:
文章图片
css样式:
.text-box {
width: 68%;
padding: 13px 3% 10px 0;
line-height: 20px;
min-height: 45px;
max-height: 90px;
border: 0;
text-align: right;
outline: none;
box-sizing: border-box;
background: white;
font-size: 1.4rem;
word-wrap: break-word;
overflow-x: hidden;
overflow-y: auto;
-webkit-user-modify: read-write-plaintext-only;
}
入坑: 1、 获取textarea的值不能使用val() 需使用 text() 获取
2、div模拟textarea ng 中对表单元素的ng-focus ng-blur 不能使用
下面实现div模拟textare带消除按钮的输入框 js代码
//删除按钮-备注项
$(document).ready(function(){
$(".remark-text .text-box").bind('input',function(e){
var val=$(".remark-text .text-box").text();
if(val==undefinded||val==""){
$(".remark-text img").hide();
}else{
$(".remark-text img").show();
}
});
$(".remark-text .text-box").blur(function(e){
$(".remark-text img").hide();
});
$(".remark-text .text-box").focus(function(e){
var val=$(".remark-text .text-box").text();
if(val==undefined||val==""){
$(".remark-text img").hide();
}else{
$(".remark-text img").show();
}
});
var handler=function(){document.getElementById('BZ').innerText="";
this.style.display="none";
}
document.getElementById('hideIcon').addEventListener('tap',handler,false)
});
注意在移动端 由于click事件存在300ms的延迟会导致 blur 事件存在问题 本文件一引入的mui插件 ,所以直接之间监听使用 tap 事件 【div模拟textarea实现高度自适应】移动端 一般加入 zepto.js
推荐阅读
- docker镜像探索----dive工具
- 三门问题(蒙提霍尔悖论)分析与Golang模拟
- 投石机可连续抛射石头【Algodoo|投石机可连续抛射石头【Algodoo | 物理模拟】
- HTML5学习之ul|HTML5学习之ul li列表实战
- spring5源码系列--循环依赖|spring5源码系列--循环依赖 之 手写代码模拟spring循环依赖
- 独立思考之对“个性Individual”|独立思考之对“个性Individual” 的思考
- Code|Code Forces-681C(模拟题,优先队列,设计STL)
- jQuery之模拟实现$().animate()(上)
- 一个简单的TCP模拟实现(一)
- Injection|Injection For Xcode11 macOS 10.15 Catalina 亲测可用iOS模拟器UI界面调试实时刷新工具