js中async函数结合promise的小案例浅析
更新时间:2019年04月14日 09:08:58 作者:嗨,陈强
这篇文章主要介绍了js中async函数结合promise的小案例浅析,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <style> *{ margin: 0; padding: 0; list-style: none; } .box{ height: 15px; margin-top: 20px; transform: translateX(-100%); transition: all 1s linear; } button{ margin-top: 30px; } </style> </head> <body> <div class="box"></div> <div class="box"></div> <div class="box"></div> <div class="box"></div> <button id="btn">点击开始</button> <script> const box=document.querySelectorAll(".box") box.forEach((item,index)=>{ item.style.cssText=`width:${100+index*15}px;background:rgb(${Math.random()*255},${Math.random()*255},${Math.random()*255})` }) btn.onclick=async function(){ for(let i=0;i<box.length;i++){ await fn(box[i]) } } function fn(el){ return new Promise((resolve,reject)=>{ el.style.transform=`translateX(0)`; el.addEventListener("transitionend",function(){ resolve();//为什么调用这个成功函数 }) }) } </script> </body> </html>
相关文章
JS中new Date().Format("yyyy-MM-dd") 报错的解决
这篇文章主要介绍了JS中new Date().Format("yyyy-MM-dd") 报错的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-01-01兼容IE、FireFox、Chrome等浏览器的xml处理函数js代码
JavaScript 兼容IE、FireFox、Chrome等浏览器的xml处理函数(xml同步/异步加载、xsl转换、selectSingleNode、selectNodes)2011-11-11
最新评论