javascript - 按住鼠标按钮时继续调整元素大小
问题描述
如何在鼠标按钮按下时不断调整元素的大小?
我试过mousedown
- 没有成功。
$('button').on('mousedown', function(){
let targ = $('.targ');
let x = targ.height();
x++;
targ.height(x);
});
.targ{background:orange;}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button>PRESS</button>
<br><br>
<div class='targ'>LOREM</div>
解决方案
您可以setInterval()
在 mousedown 事件中添加一个,并在 mouseup 上清除它
这是一个将其设置为 50 毫秒的工作示例:
var interval;
$('button').on({
mousedown: function() {
interval = setInterval(function() {
let targ = $('.targ');
let x = targ.height();
x++;
targ.height(x);
}, 50);
},
mouseup: function() {
window.clearInterval(interval);
}
});
也在这里工作小提琴:https ://jsfiddle.net/qytd5h1n/2/
希望能帮助到你 :)
推荐阅读
- delphi - 截至 2018 年 11 月 1 日,谷歌街景 javascript api 显示灰屏
- java - 如何使用 java ftpclient 在远程位置上传重复文件
- orientdb - Gremlin 查询以检索 OrientDB 通用类的节点
- asp.net-mvc - 路由器提供程序 MVC
- javascript - 当我尝试从 jquery 将数据传递到 Flask 端点时没有响应
- azure - Microsoft Azure AD Graph API:获取按比例分配的用户许可证信息
- jquery - 在任何表格悬停时显示颜色选项列表
- javascript - 通过锚点识别表单提交动作
- c# - 在表单视图中加载模型并进行编辑
- node.js - 如何使用“ng e2e”对节点服务器而不是 webpack-dev-server 运行量角器测试