Irgendwie ziehen meine Draggables nicht mehr in die Platzhalter.Draggable zieht nicht
Ich bemerkte, es gibt einen Fehler auf der appendChild
in der drop()
Funktion, aber wenn ich dort warnt merke ich es kommt nicht einmal so weit.
var people = ['Sinan', 'Babette', 'Thomas', 'Yannick', 'Nick'];
$.each(people, function(key, val) {
$('#placeholders').append('<div class="dnd" data-id="' + val + '" ondrop="drop(event)" ondragover="testDiv(event, innerHTML)"></div>');
});
$('#seizeImg img').on('dragstart', function(event) {
drag(event);
});
function testDiv(ev, x) {
if (x.length > 0) {
return false;
} else {
allowDrop(ev);
return true;
}
}
function allowDrop(ev) {
ev.preventDefault();
}
function drag(ev) {
ev.dataTransfer.setData("text", ev.target.id);
}
function drop(ev) {
ev.preventDefault();
var data = ev.dataTransfer.getData("text");
ev.target.appendChild(document.getElementById(data));
var complete = false;
$.each('#seizeImg img', function(key, val) {
alert(key);
});
}
.dnd {
display: inline-block;
vertical-align: top;
width: 10%;
height: 160px;
padding: 10px;
border: 2px solid #B7E6E6;
background: rgba(51, 255, 102, 0.2);
}
#seizeImg img {
width: 10%;
height: 160px;
}
div.label {
height: 25px;
text-align: center;
border: none;
background: none;
}
div.buf {
background: rgba(255, 0, 0, 0.2);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="placeholders">
</div>
<br>
<br>
<div id="seizeImg">
<img id="Babette" src="img/Babette.jpg" draggable="true" ondrop="drop(event)" width="186" height="186">
<img id="Thomas" src="img/Thomas.jpg" draggable="true" ondrop="drop(event)" width="186" height="186">
<img id="Yannick" src="img/Yannick.jpg" draggable="true" ondrop="drop(event)" width="186" height="186">
<img id="Sinan" src="img/Sinan.jpg" ondrop="drop(event)" draggable="true" ondrop="drop(event)" width="186" height="186">
<img id="Nick" src="img/Nick.jpg" ondrop="drop(event)" draggable="true" ondrop="drop(event)" width="186" height="186">
</div>
Ja, ich tat das, aber es sagt immer noch, dass die ziehbare Funktion nicht gefunden wird. Aber das Hauptproblem war, dass es eine Schicht über den Ziehpunkten gab, die mich davon abhielt, es zu klicken. Ich habe stundenlang an diesem Problem gearbeitet und anscheinend ist es nur eine dumme Schicht –
Wenn Sie dorthin gekommen sind, können Sie darauf klicken und ziehen es gibt aber immer noch Probleme mit Layern, die Sie immer in: $ ('seizeImg img'). draggable ({function() {// Funktion hier hinzufügen}, // hier können Sie Stack hinzufügen: "seizeImg img", appendTo : "body", zIndex: 10000}); und es macht was du beginnst, den obersten Gegenstand zu ziehen. – Jeanze
Ja, ich habe den Z-Index der darüber liegenden Schicht reduziert –