私はいくつかの助けをお願いしたいと思います。基本的には、ボタンを押すたびに新しい<div>
を作ろうとしています。次に、私がそれをクリックしたときにドラッグして移動させることができるようにするために、新しい<div>
を追加する機能を追加したいと考えています(新しい<div>
は別々に動くはずです)。私は多くのことを試しましたが、すべてがうまく機能していないようです。私が得た結果は、最初の<div>
だけが動いているか、すべて<div>
が一緒に動いていることです。私は自分の動いている機能を追加していない。なぜなら、それはうまくアレンジされていない(多くのことを試したので理解しにくい)。また、JQueryを使用することも許可されていません。どのように新しいdivをドラッグ可能にするには?
どうすればよいですか?ありがとうございました。
<html>
<body>
<button id="mybutton">Create a new moveabl div</button>
<script>
var create = document.createElement("div");
create.id = "dragm2";
document.body.appendChild(create);
var count = 0;
var text = document.createTextNode("mu yu ");
document.getElementById("mybutton").addEventListener("click", function() {
count++;
var create = document.createElement("div");
create.id = "dragme" + count;
create.style.background = "green";
create.style.height = "170px";
create.style.width= "70px";
create.appendChild(text);
document.body.appendChild(create);
});
document.body.addEventListener("click", function(event) {
console.log(event.target.nodeName);
console.log(event.target.id);
var movenow = event.target.id;
if (movenow !== null && event.target.nodeName !== "BUTTON") {
document.getElementById(movenow).addEventListener('mousedown', hold, false);
document.body.addEventListener('mouseup', release, false);
function hold() {
document.getElementById(movenow).addEventListener('mousemove', move, true);
document.body.addEventListener('mousemove', move, true);
}
// ==> On Realease Function <==
function release() {
document.getElementById(movenow).removeEventListener('mousemove', move, true);
document.body.removeEventListener('mousemove', move, true);
}
function move(event) {
var epY = event.clientY;
var epX = event.clientX;
if (document.querySelectorAll("input[name='revertxy']:checked").length >= 1) {
epY = event.clientX;
epX = event.clientY;
}
event.target.style.position = 'absolute';
event.target.style.top = epY + 'px';
event.target.style.left = epX + 'px';
}
}
});
</script>
</body>
</html>
あなたはドラッグ可能な属性を使用する必要があります。https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/draggable。あなたが投稿したコードはどのようにして1つのdivをドラッグ可能にしますか? – floor
jsFiddleの中で試したことを再現できますか?問題を再現できないため、共有したコードは必ずしも役立たないものです。 –