Bewegen kann ich es, aber, ich schaffe es nicht, 'mousemove' zu canceln.
versuch mal
XXX.onmousemove = null:
OK ich habe jetzt so relisiert:
gui.catl = document.getElementById('catlabel'); // Katalog Label
// neu eingefügt
gui.catl.onmouseup = function(evt){
gui.catl.onmousemove = null;
}
// geändert
gui.catl.onmousedown = function(evt){
var offx = evt.pageX - gui.cat.offsetLeft;
var offy = evt.pageY - gui.cat.offsetTop;
gui.catl.onmousemove = function foo (evt){
gui.cat.style.left = evt.pageX - offx + "px";
gui.cat.style.top = evt.pageY - offy + "px";
}
};
Das funktioniert.
Ist aber im Verhalten nicht ganz optimal, besonders in der Vertikalen, wenn die Maus sich schneller bewegt, als der Bereich mitzieht.
mein HTML sieht so aus
<div id=cat>
<h4 id=catl>Sensitives Label</h4>
...
</div>
Entweder ich mach den Algorythmus schneller, oder ich vergrössere den Bereich, oder versuche die Events move und up auf dem document Object zu setzen.
Erste Versuche waren hier nicht gleich erfolgreich.
vielen Dank
mfg Beat