实现div可以调整高度(div实现resize)


一、div 实现resize(类似textarea)

  代码如下:

<!DOCTYPE html>
<html><head><title>div实现textarea效果</title><style>#textarea{height:200px;width:300px;padding:4px;border:1px solid #888;resize:vertical;overflow:auto;}#textarea:empty:before{content:attr(placeholder);color:#bbb;}</style></head><body><divid="textarea"contenteditable="true"placeholder="请输入内容..."></div></body>
</html>

二、监听div的resize事件

<!DOCTYPE html>
<html><head><title>div监听resize事件</title><style>.container{position:relative;width:500px;height:300px;background-color:black;padding:4px;resize:vertical;overflow:auto;}.size-watch{width:100%;height:100%;position:absolute;visibility:hidden;margin:0;padding:0;border:0;}</style>    </head><body><divclass="container"id="mapDiv" >hello</div><script>functionriseze (el, cb) {//创建iframe标签,设置样式并插入到被监听元素中variframe=document.createElement('iframe');iframe.setAttribute('class','size-watch');el.appendChild(iframe);//记录元素当前宽高varoldWidth=el.offsetWidth;varoldHeight=el.offsetHeight;//iframe 大小变化时的回调函数functionsizeChange () {//记录元素变化后的宽高varwidth=el.offsetWidth;varheight=el.offsetHeight;//不一致时触发回调函数 cb,并更新元素当前宽高if(width!==oldWidth||height!==oldHeight) {cb({width: width, height: height}, {width: oldWidth, height: oldHeight});oldWidth=width;oldHeight=height;}}//设置定时器用于节流vartimer= 0;//将 sizeChange 函数挂载到 iframe 的resize回调中
iframe.contentWindow.onresize= function() {clearTimeout(timer);timer=setTimeout(sizeChange,20);};}//var el = document.getElementById("mapDiv");varel=document.querySelector('.container');riseze(el, (val, oldVal)=>{console.log(`size changed!new: ${JSON.stringify(val)}, old: ${JSON.stringify(oldVal)}`);});</script></body>
</html>

参考网站:

1、https://blog.csdn.net/liya_nan/article/details/81742370

2、https://segmentfault.com/a/1190000016550156

转载于:https://www.cnblogs.com/BillyYoung/p/11209041.html

实现div可以调整高度(div实现resize)相关推荐

  1. 获取div的各种高度

    1.获取div的文档总高度(必须DOM操作): var scrollHeight=document.getElementById("inner").scrollHeight;// ...

  2. CSS------当内容超出div宽度后自动换行和限制文字不超出div宽度和高度

    原文:CSS------当内容超出div宽度后自动换行和限制文字不超出div宽度和高度 如图: 1.自动换行 <div style="widht:100%;height:100%;wo ...

  3. div没有设置高度,背景颜色却无法显示

    在设计网页时,设置了div为自动高度或不给height值,当div设置背景时在IE6可以显示背景颜色,但是IE7,8却不显示. 解决办法如下: 1.把 height:auto; 改成 height:1 ...

  4. css控制div等比高度

    在移动端开发中,在banner轮播图未加载出来之前,banner层是不占文档流高度的,当从服务器获取完banner数据,展示的时候,banner层因为有了内容 所以会撑开,导致banner层下面的内容 ...

  5. div中iframe高度自适应问题

    网页分为上.中.下三部分,上.下高度固定中间高度自适应:中间分为左.右两部分,左边宽度固定,右边宽度自适应.现在右侧div是宽度和高度都是自适应,右侧div里有个IFrame,想让IFrame自适应外 ...

  6. dw怎么修改html框架的宽度,Dreamweaver (dw)cs6中div标签宽度和高度设置方法

    很多用户给小编留言说dw cs6中div标签宽度和高度怎么设置?Dreamweaver cs6中div标签想要设置高度和宽度,该怎么设置呢?今天脚本之家小编就给大家带来Dreamweaver (dw) ...

  7. jquery动态改变div宽度和高度

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. 子div用了float浮动之后,如何撑开父元素,让父元素div自动适应高度的问题

    方法一: html: <div id="all1"><div id="left1">1</div><div id=&q ...

  9. JS实现div宽度、高度拉伸

    一.JavaScript实现宽度高度自动缓慢拉伸 <!DOCTYPE html> <html><head><meta charset="utf-8& ...

最新文章

  1. 1.9 可避免误差-深度学习第三课《结构化机器学习项目》-Stanford吴恩达教授
  2. office数据集dslr_如何将照片从DSLR无线传输到智能手机
  3. MySQL如何查全部序列_Oracle查询所有序列
  4. 用VB如读取内存地址
  5. 使用Decimal.js解决前端计算金钱失真问题
  6. 深度学习2.0-18.随机梯度下降之手写数字问题实战(层)
  7. python菜鸟教程 | 字典(Dictionary)
  8. 重装上阵两个人合体机器人_重装上阵:组装机器人是正常人的行为,要我就搞出点花样来...
  9. Unable to boot device due to insufficient system resources
  10. Merlin——零知识证明(1)理论篇
  11. php 在文本域中添加qq表情 createelement,仿微信在对话框文字中插入Emoji表情包
  12. 17款现代风格的免费英文字体,分享给设计师们
  13. 小猿圈python之python期末考试测试题(一)_小猿圈python之python期末考试测试题(二)...
  14. Java常用消息摘要算法-MD5
  15. (超全)Vue.js学习笔记—webpack基础配置(webpack4+babel7+vue2)
  16. 【Python代码】文件查重(02)-简易版
  17. 计算机SCI期刊是如何审稿的? - 易智编译EaseEditing
  18. 坐标正算和坐标反算的c语言,坐标正算程序坐标反算程序
  19. 大学生电子设计大赛最全资料
  20. anaconda中matplotlib安装

热门文章

  1. LeetCode Hot100 ---- 动态规划专题
  2. cpu和内存之间——地址映射
  3. 国内up300.net网盘无法使用的解决办法
  4. python 拾遗(一)
  5. power bi可视化表_如何使用Power BI可视化数据?
  6. 探寻浏览器渲染的秘密
  7. 网贷申请技巧,提高90%通过率
  8. 单片机小白学步系列(十九) 单片机/计算机系统概述:扩展模块
  9. QQ在屏幕边缘自动隐藏不能正常显示
  10. WinCE电源管理的简单介绍