jquery - 一个函数中有两件事,其中一个必须等待
问题描述
我想在一个函数中完成两件事,我想首先将比例变为 0.5,然后将其删除但不工作
$(document).on('click', '.remove', function() {
$(this).parent().css({
'transform': 'scale(0.5)'
});
$(this).parent().remove();
})
.planarea div {
width: 225px;
height: 220px;
transition: .1s;
background: #ffff00;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="planarea">
<div>
<a class="remove">x</a>
<h1>asd</h1>
<textarea></textarea>
</div>
解决方案
使用 jQuery 的.one()
方法为事件附加一个一次性事件处理程序transitionend
。处理程序将在过渡结束后删除元素。
$(document).on('click', '.remove', function() {
$(this).parent().one('transitionend', function() {
$(this).remove();
})
.css({
'transform': 'scale(0.5)'
});
});
.planarea div {
width: 225 px;
height: 220 px;
transition: transform .1s;
background: #ffff00;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="planarea">
<div>
<a class="remove">x</a>
<h1>asd</h1>
<textarea></textarea>
</div>
</div>
推荐阅读
- python - UnicodeEncodeError:“charmap”编解码器无法在位置 0 编码字符“\U0001f937”:字符映射到
- python - 如何解决 WinError 87 在 Win 10 上运行 py2exe
- c# - 通过 WebClient C# 从 Google.Drive 下载文件
- python - discord.py 给了我 event() 缺少 1 个必需的位置参数:'coro'
- r - 当它们来自ggplot中的不同列时如何标记线
- java - 在 android studio java 中解析 API volley 库中的数据
- scala - 如何在“JsObject.toString()”中禁用 Scala Play json 的反斜杠转义?
- parsing - 删除标题、前导和重复空格,但不删除 lex 和 bison 中的空格
- javascript - 如何将特定的以太坊地址传递给异步加载合约函数?
- python - 用于多变量绘图的 Python Matplotlib/Seaborn 模板