appendChildとclassListのかみ合わせで悩んでいます
まず1番ですがこの記述だと動きません
2番だと動きます
1番が動かない理由はappedChildした瞬間にclassList.addを即時付けてもタイミング的な問題で動かないと読んでいます
appendChildが完了したらという判定ができれば一番いいのですがそのようなことはできますか?
そして3番と4番です
3番のremoveを動かし、完了したタイミングで4番を実行したい場合どうすればいいでしょうか
これもsetTimeoutしか思い浮かびません
詳しい方よろしくお願いいたします
<style> body,html{ width:100%; height:100%; } .m{ transform: translateX(100%); transition: 1s ; } .m.m_{ transform:translateX(0%); } </style> <script> window.onload=function(){ div=document.createElement("div"); div.style.width="150px"; div.style.height="50px"; div.style.position="absolute"; div.style.top="0%"; div.style.right="0%"; div.classList.add("m"); div.setAttribute("id","div"); div.style.background="red"; div.addEventListener("transitionend", function() { document.getElementById("div").classList.remove("m_");//3番 document.body.removeChild(document.getElementById("div"));//4番 }); document.body.appendChild(div); //document.getElementById("div").classList.add("m_");1番 setTimeout("document.getElementById(\"div\").classList.add(\"m_\")",1000);//2番 } </script>
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。