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

实现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><div id="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 ><div class="container" id="mapDiv" >hello</div><script>function riseze (el, cb) {// 创建iframe标签,设置样式并插入到被监听元素中var iframe = document.createElement('iframe');iframe.setAttribute('class', 'size-watch');el.appendChild(iframe);// 记录元素当前宽高var oldWidth = el.offsetWidth;var oldHeight = el.offsetHeight;// iframe 大小变化时的回调函数function sizeChange () {// 记录元素变化后的宽高var width = el.offsetWidth;var height = el.offsetHeight;// 不一致时触发回调函数 cb,并更新元素当前宽高if (width !== oldWidth || height !== oldHeight) {cb({width: width, height: height}, {width: oldWidth, height: oldHeight});oldWidth = width;oldHeight = height;}}// 设置定时器用于节流var timer = 0;// 将 sizeChange 函数挂载到 iframe 的resize回调中
            iframe.contentWindow.onresize = function () {clearTimeout(timer);timer = setTimeout(sizeChange, 20);};}//var el = document.getElementById("mapDiv");var el = 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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/248439.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

10分钟设置免费远程桌面

文章目录前言远程桌面设置教程启动Amazon Lightsail实例配置远程桌面启动远程桌面使用远程桌面前言 “你见过洛杉矶凌晨4点的样子吗&#xff1f;” 没有也没关系&#xff0c;你可以轻松配置一台位于洛杉矶的免费远程桌面。 利用Amazon全球可用区&#xff0c;甚至可以在世界各…

树莓派-开启spi

1. sudo raspi-config #进入树莓派配置页 2. #进入每5项&#xff0c;进入启用spi即可 转载于:https://www.cnblogs.com/lobin/p/10459076.html

Lucene全文检索过程

1. 索引过程&#xff1a; 1) 有一系列被索引文件 2) 被索引文件经过语法分析和语言处理形成一系列词(Term)。 3) 经过索引创建形成词典和反向索引表。 4) 通过索引存储将索引写入硬盘。 2. 搜索过程&#xff1a; 1) 用户输入查询语句。 2) 对查询语句经过语法分析和语言分析得到…

tcpdump 用法

原文链接 本文原文来自&#xff1a; A tcpdump Tutorial with Examples — 50 Ways to Isolate Traffic TCPDUMP 简介 TCPDUMP 在一个界面中既提供了强大的功能又简单易用&#xff0c;无疑已经是网络分析工具中的老大。 本教程将介绍如何以各种方式隔离流量&#xff1a;从IP&am…

网络端

1.synchronized 同步锁 同步方法: 成员|静态 简单,但是锁的范围一般可能较大,效率低 同步块 类的class:相当于锁了类的整个信息|所有对象 this:锁当前对象,锁了这个对象的所有资源 资源:一般锁不变的内容--对象地址 锁的范围太大效率低,锁的范围太小可能锁不住 锁一定要锁不变的…

BZOJ2690: 字符串游戏(平衡树动态维护Dfs序)

Description 给定N个仅有a~z组成的字符串ai,每个字符串都有一个权值vi,有M次操作&#xff0c;操作分三种&#xff1a;Cv x v:把第x个字符串的权值修改为vCs x a:把第x个字符串修改成aQ:求出当前的最大权字符串集合&#xff0c;使得这个集合中的字符串经过重新排列后满足除最后一…

【第一趴】初探uni-app(uni-app发行者、uni-app推出背景、为什么选择uni-app)

文章目录写在前面DCloud当下跨平台开发存在的问题为什么选择uni-app写在最后写在前面 聚沙成塔——每天进步一点点&#xff0c;大家好我是几何心凉&#xff0c;不难发现越来越多的前端招聘JD中都加入了uni-app 这一项&#xff0c;它也已经成为前端开发者不可或缺的一项技能了&…

Rocket - tilelink - Atomics

https://mp.weixin.qq.com/s/TSwKL_qm-b-0e8x7r--hhg 简单介绍Atomics中数学运算、逻辑运算的实现。​​1. ioAtomics是一个硬件模块&#xff0c;他继承自Modules&#xff1a;​​IO端口定义如下&#xff1a;​​其中&#xff1a;a. write: 是否写操作&#xff1b;b. a&#xf…

Spark streaming java代码

待做转载于:https://www.cnblogs.com/drjava/p/10464388.html

【第二趴】uni-app开发工具(手把手带你安装HBuilderX、搭建第一个多端项目初体验)

文章目录 写在前面HBuilderXHBuilderX 优势HBuilderX 安装uni-app 初体验写在最后写在前面 聚沙成塔——每天进步一点点,大家好我是几何心凉,不难发现越来越多的前端招聘JD中都加入了uni-app 这一项,它也已经成为前端开发者不可或缺的一项技能了,所以凉哥为大家推出 聚沙成…

“勤学会”火爆来袭

文章目录勤学会是什么&#xff1f;勤学会存在的意义是什么强大的助学团勤学会如何帮助大家学习参与勤学会能得什么奖品专属C计划加入勤学会勤学会是什么&#xff1f; 他来了他来了&#xff0c;其实两个月前勤学会的概念产品就已经出现了&#xff0c;只不过因为了 1024 大型活动…

LeetCode -- 204. Count Primes

题目标签 HashTab&#xff08;哈希表&#xff09; 题意及思路 题意&#xff1a;略 思路&#xff1a;有关素数的题目我所知道有两种做法。一种是最基本的isPrime算法&#xff0c;关键点在循环判断时&#xff0c;上限为Math.sqrt(n) &#xff08;求n是否为素数&#xff09;。另外…

如何寻找无序数组中的第K大元素?

如何寻找无序数组中的第K大元素&#xff1f; 有这样一个算法题&#xff1a;有一个无序数组&#xff0c;要求找出数组中的第K大元素。比如给定的无序数组如下所示&#xff1a; 如果k6&#xff0c;也就是要寻找第6大的元素&#xff0c;很显然&#xff0c;数组中第一大元素是24&am…

【第三趴】uni-app页面搭建与路由配置(了解工程目录结构、学会搭建页面、配置路由并成功运行)

文章目录 写在前面工程结构新页面呈现写在最后本期推荐写在前面 聚沙成塔——每天进步一点点,大家好我是几何心凉,不难发现越来越多的前端招聘JD中都加入了uni-app 这一项,它也已经成为前端开发者不可或缺的一项技能了,所以凉哥为大家推出 聚沙成塔【45天玩转uni-app】专栏…

测试MongoDB的自动分片

MongoDB的自动分片&#xff1a; test库分片配置&#xff1a; db.shards.find(){ "_id" : "shard0000", "host" : "127.0.0.1:29017", "state" : 1 }{ "_id" : "shard0001", "host" : "1…

线上CPU飚高(死循环,死锁……)?帮你迅速定位代码位置

top基本使用&#xff1a; top命令参考本篇文章 查看内存和CPU的top命令&#xff0c;别看输出一大堆&#xff0c;理解了其实很简单 top 命令运行图&#xff1a; 第一行&#xff1a;基本信息 第二行&#xff1a;任务信息 第三行&#xff1a;CPU使用情况 第四行&#xff1a;物理内…

zookeeper watch笔记

ZK其核心原理满足CP, 实现的是最终一致性, 它只保证顺序一致性. zookeeper 基于 zxid 以及阻塞队列的方式来实现请求的顺序一致性。如果一个client连接到一个最新的 follower 上&#xff0c;那么它 read 读取到了最新的数据&#xff0c;然后 client 由于网络原因重新连接到 zoo…

洛谷 P1352 没有上司的舞会

洛谷 P1352 没有上司的舞会 Description 某大学有N个职员&#xff0c;编号为1~N。他们之间有从属关系&#xff0c;也就是说他们的关系就像一棵以校长为根的树&#xff0c;父结点就是子结点的直接上司。现在有个周年庆宴会&#xff0c;宴会每邀请来一个职员都会增加一定的快乐指…

单机简单搭建一个kafka集群(没有进行内核参数和JVM的调优)

1.JDK安装 在我的部署单节点kafka的博客里有相关的方法。&#xff08;https://www.cnblogs.com/ToBeExpert/p/9789486.html &#xff09;zookeeper和kafka的压缩包下载地址也在单节点部署的这篇博客里。 1.zookeeper集群的搭建 将zookeeper.tar.gz解压为三个目录&#xff0c;例…

[翻译]三张卡片帮你记住TDD的基本原则

原文地址&#xff1a;http://blog.briandicroce.com/2008/03/14/three-index-cards-to-easily-remember-the-essence-of-test-driven-development/ 当我浏览ObjectMentor的博客的时候&#xff0c;其中一篇Tim Ottinger的“TDD on Three Index Cards”引起了我的注意。他回忆了他…