div1 と div2 タグ内の 2 つの要素を交換しようとしましたが、最初の置換関数のみが適切に実行され、他の要素は交換されません
div のいずれかが一度にスワップされますが、両方を同時にスワップしようとしても起こりません。助けてください *
<head> <style type="text/css"> #div1 { width:350px; height:70px; padding:10px; border:1px solid #aaaaaa; } #div2 { width:350px; height:70px; padding:10px; border:1px solid #aaaaaa; } </style> <script> function allowDrop(ev) { ev.preventDefault(); } function drag(ev) { var child = ev.target; var parents = child.parentNode; ev.dataTransfer.setData("child1", child.id); ev.dataTransfer.setData("parent1", parents.id); } function drop(ev) { ev.preventDefault(); var childid1 = ev.dataTransfer.getData("child1"); var parentid1 = ev.dataTransfer.getData("parent1"); var parent1 = document.getElementById(parentid1); var c = ev.currentTarget.childNodes; var childid2 = c[1].id; parent1.replaceChild(c[1], document.getElementById(childid1)); var parent2 = ev.currentTarget; parent2.removeChild(c[1]); parent2.appendChild(document.getElementById(childid1)); } </script> </head> <body> <div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)"> <img id="drag1" src="img_logo.gif" draggable="true" ondragstart="drag(event)" width="336" height="69"> </div> <br> <div id="div2" ondrop="drop(event)" ondragover="allowDrop(event)"> <img id="drag2" src="img_logo.gif" draggable="true" ondragstart="drag(event)" width="236" height="49"> </div> </body>