Hi.
Nun habe ich mein Drag&Drop-Script. Es ist auch ein äußerst gutes Script. Dennoch habe ich eine Frage, auf die ich keine Lösung finde (Suche ergab nichts, Google ist ratlos ...)
Ich möchte jetz abfangen, wenn der User eine Infobox erstellt und diese dann in einen Container (Bestimmter, leicht eingefärbter Bereich auf der Seite.) zieht. Dabei möchte ich aber auch, dass diese Box nicht sofort verschwindet, wenn die Box den Bereich nur berührt. Genauso wenig möchte ich, dass die Box darunter verschwindet ...
Ich habe schon versucht, mit pixelTop und pixelLeft im Script alles Abzufangen. Aber irgendwie macht er das nicht.
Ich meinte das also so: (kurzform)
var ablegen = false; // Diese Variable sagt der Drag-Beenden-funktion, dass es in die Box soll.
function drag(event) {
... // Befehle, um den Container zu bewegen.
// Dragelement ist das Element, welches gedragt wird.
if(Dragelement.style.pixelTop >= 200 && Dragelement.style.pixelTop <= 500 - Dragelement.offsetHeight && Dragelement.style.pixelLeft >= 200 && Dragelement.style.pixelLeft <= 500 - Dragelement.offsetWidth)
ablegen=true; // In die Box = Ja
else
ablegen=false; // In die Box = Nein
}
function stopdrag() {
if(ablegen == true)
{
document.getElementById("Container").innerHTML+=Dragelement.outerHTML;Dragelement.outerHTML = "";
}
... Befehle, um das draggen, abzubrechen.
}
So habe ich es mal versucht. Doch er legt es einfach nicht in die Box ab, obwohl es passieren müsste.
if(ablegen == true)
{
document.getElementById("Container").innerHTML+=Dragelement.outerHTML;Dragelement.outerHTML = "";
}
Ist jetzt nur eine kurzform. Meine Idee ging noch viel weiter. (Es wird ein Link erzeugt, wo die Information als Alertbox auftaucht. Ein 2 Link erstellt die Box dann wieder.);
Hoffe auf Hilfe ...
Schon jetzt, danke.
(Bitte nicht über evtl. Fehler, die bei Firefox oder ähnliches
auftauen, kommentieren. Z. B. "das geht auch kürzer ..." nicht
posten.)
Das Komplette Packet steht hier (Meine Idee noch nicht eingearbeitet ...)
MFG
Griever
PS: Sorry wegen dem Doppelposting ... *schäm*